Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
445 commits
Select commit Hold shift + click to select a range
ff5799e
updates
bourgeoa Apr 3, 2023
0f58634
Merge branch 'resourceName' of https://github.com/solid/node-solid-se…
bourgeoa Apr 3, 2023
f906322
Update lib/ldp.js
bourgeoa Apr 3, 2023
74a3d61
Update test/integration/http-test.js
bourgeoa Apr 3, 2023
bbb8d78
Merge pull request #1726 from nodeSolidServer/resourceName
bourgeoa Apr 6, 2023
9684cca
isOwner
bourgeoa Apr 15, 2023
6822a82
catch err
bourgeoa Apr 15, 2023
958a6ef
Mention Solid test suite (#1737)
michielbdejong Sep 3, 2023
401d5f2
Handle error when Origin header value is not IRI
csarven Sep 4, 2023
e2c2d01
Update acl-checker.js
bourgeoa Oct 20, 2023
72a3a69
Merge pull request #1738 from csarven/fix/acl-checker/origin-non-iri-…
bourgeoa Oct 20, 2023
d58fee0
Append allowed for non existing document
bourgeoa Nov 28, 2023
2dd0789
allow PUT Append for new resource
bourgeoa Nov 28, 2023
7196543
Append allowed
bourgeoa Nov 28, 2023
f29a258
add test
bourgeoa Nov 30, 2023
594f37a
removed check on resourceExists
bourgeoa Nov 30, 2023
033e2b1
Update ci.yml to node 14, 16, 18
bourgeoa Nov 30, 2023
e14e5f0
Update test/integration/acl-oidc-test.js
bourgeoa Nov 30, 2023
173ecb7
Update test/integration/acl-oidc-test.js
bourgeoa Nov 30, 2023
315ccbd
Update ci.yml
bourgeoa Nov 30, 2023
74ad47b
Update ci.yml
bourgeoa Nov 30, 2023
6129eb9
node14 & 16
bourgeoa Nov 30, 2023
c71eb27
Merge branch 'appendPatchNewDocument' of https://github.com/solid/nod…
bourgeoa Nov 30, 2023
44bfd13
update test-suite
bourgeoa Dec 15, 2023
f243c66
Merge branch 'main' into appendPatchNewDocument
bourgeoa Dec 15, 2023
ae9cfd8
node 18 defaults to ipv6
bourgeoa Dec 15, 2023
649901c
Merge branch 'appendPatchNewDocument' of https://github.com/solid/nod…
bourgeoa Dec 15, 2023
b71c107
clean runTests line
bourgeoa Dec 16, 2023
5080f6f
test branch
bourgeoa Dec 16, 2023
dfcf617
nss-skips
bourgeoa Dec 16, 2023
c5ccf90
use test branch
bourgeoa Dec 16, 2023
94bb321
use https
bourgeoa Dec 16, 2023
59b22da
remove ftech branch
bourgeoa Dec 16, 2023
6c5edcd
add git pull
bourgeoa Dec 16, 2023
65ebc1c
git pull https
bourgeoa Dec 16, 2023
c200a01
git stash
bourgeoa Dec 16, 2023
53a6681
git stash
bourgeoa Dec 17, 2023
897f2a1
git stash
bourgeoa Dec 17, 2023
3b5afe1
git stash
bourgeoa Dec 17, 2023
313f0f8
git
bourgeoa Dec 17, 2023
eb4fd60
git
bourgeoa Dec 17, 2023
e76d5ce
git
bourgeoa Dec 17, 2023
a49404d
build git
bourgeoa Dec 17, 2023
b985182
runTestsFromGit
bourgeoa Dec 17, 2023
acf53e5
Merge pull request #1745 from nodeSolidServer/appendPatchNewDocument
bourgeoa Dec 17, 2023
7be97cd
Merge pull request #1742 from nodeSolidServer/csarvenfix/acl-checker/…
bourgeoa Dec 17, 2023
dd9217e
Merge pull request #1728 from nodeSolidServer/multipleOwners
bourgeoa Dec 17, 2023
b62a1fc
update minor dependencies
bourgeoa Dec 17, 2023
83dad06
5.7.8
bourgeoa Dec 17, 2023
208c67b
Merge branch 'main' into appendPutNewDocument
bourgeoa Dec 18, 2023
47100fc
Append with PUT
bourgeoa Dec 19, 2023
990eff0
update check itemName
bourgeoa Dec 23, 2023
9fe8003
mocha is not exiting
bourgeoa Dec 26, 2023
dabea82
Merge branch 'issue#1743' into alain-global
bourgeoa Dec 26, 2023
0185d3c
5.7.9-alpha
bourgeoa Dec 26, 2023
e17beb8
409 itemName and contentTypen in PATCH
bourgeoa Dec 26, 2023
3e6db72
Merge branch 'issue#1743' into 5.7.9-alpha
bourgeoa Dec 26, 2023
0bbb3d3
Merge branch 'appendPutNewDocument' into issue#1743
bourgeoa Dec 27, 2023
d0153fc
Update lib/handlers/put.js
bourgeoa Dec 27, 2023
b348b4b
Update lib/ldp.js
bourgeoa Dec 27, 2023
8018f1f
Update lib/ldp.js
bourgeoa Dec 27, 2023
057157b
Update lib/ldp.js
bourgeoa Dec 27, 2023
a99473d
Update lib/ldp.js
bourgeoa Dec 27, 2023
9e14a1d
failing test in CI
bourgeoa Dec 27, 2023
4900dc7
Merge branch 'issue#1743' of https://github.com/solid/node-solid-serv…
bourgeoa Dec 27, 2023
4860cbb
update solid-crud-tests
bourgeoa Dec 27, 2023
a5d6011
Merge branch 'issue#1743' into 5.7.9-alpha
bourgeoa Dec 27, 2023
b4e062b
update new slug tests
bourgeoa Dec 31, 2023
eca3418
run 18 only
bourgeoa Dec 31, 2023
81f6d10
run 18 only
bourgeoa Dec 31, 2023
1f0277a
Merge branch '5.7.9-alpha' of https://github.com/solid/node-solid-ser…
bourgeoa Dec 31, 2023
a7b7df9
acl-checker.js rewrite parentAcl
bourgeoa Jan 6, 2024
bc592e8
5.7.9-beta
bourgeoa Jan 6, 2024
1593dd2
update DELETE
bourgeoa Jan 7, 2024
667b3a5
update DELETE
bourgeoa Jan 7, 2024
6b6257f
update DELETE
bourgeoa Jan 9, 2024
c91b7bc
cleaning an DELETE
bourgeoa Jan 10, 2024
6c7fe98
cleaning
bourgeoa Jan 10, 2024
95dd7c0
Update README.md
bourgeoa Jan 11, 2024
809e0ac
404 --> 403/401 with DELETE
bourgeoa Jan 15, 2024
33f7354
405 not allowed method
bourgeoa Jan 16, 2024
16e36a6
Update lib/acl-checker.js
bourgeoa Jan 17, 2024
897207c
Update lib/acl-checker.js
bourgeoa Jan 17, 2024
fbd30b0
text/turtle defaultContainerContentType
bourgeoa Jan 17, 2024
5a42a14
Merge branch '5.7.9-beta' of https://github.com/solid/node-solid-serv…
bourgeoa Jan 17, 2024
59f94fb
precondition if-none-match asterisk
bourgeoa Jan 28, 2024
3784e55
redirect http
bourgeoa Jan 28, 2024
9acda7d
cleaning
bourgeoa Jan 29, 2024
302ef62
Change translation error to not acceptable
csarven Jan 30, 2024
65b04bb
Check untranslatable requested type for RDF
csarven Jan 30, 2024
399308c
missing Accept-Patch/Accept-Post headers
bourgeoa Feb 5, 2024
777d037
add GET accept-post test
bourgeoa Feb 5, 2024
ab0545f
cleaning
bourgeoa Feb 5, 2024
69ef87c
non RDFs translation error
bourgeoa Feb 5, 2024
37173c1
Accept-Put header
bourgeoa Feb 6, 2024
032df34
Merge pull request #1750 from nodeSolidServer/5.7.9-beta
bourgeoa Feb 6, 2024
7c8ccc6
Merge pull request #1755 from nodeSolidServer/csarven-fix/translation…
bourgeoa Feb 6, 2024
9f636ea
Merge branch 'main' into accept-headers
bourgeoa Feb 6, 2024
4dc7849
Update put.js
bourgeoa Feb 6, 2024
7ae2bcc
Merge pull request #1754 from nodeSolidServer/accept-headers
bourgeoa Feb 6, 2024
89b5f13
fix security issue
bourgeoa Feb 22, 2024
74133e6
Merge pull request #1759 from nodeSolidServer/fix/issue#1758
bourgeoa Feb 22, 2024
2e39e97
404 on non existent container path
bourgeoa Feb 26, 2024
b00726f
Update test/unit/resource-mapper-test.js
bourgeoa Feb 26, 2024
dd2745a
improve consistency of the look and feel of the two buttons
ewingson Mar 5, 2024
c24c9b5
minor fix put style code inside brackets
ewingson Mar 6, 2024
5a55d38
yet again a minor fix put brackets inside "quote/apostrophe"
ewingson Mar 6, 2024
1947516
minor dependencies
bourgeoa Mar 8, 2024
d8290cb
5.7.9
bourgeoa Mar 8, 2024
1deb9db
check for redirect_uri
bourgeoa Mar 8, 2024
80e223f
edit message
bourgeoa Mar 15, 2024
bd171fa
Merge pull request #1772 from nodeSolidServer/fix/issue#1771
bourgeoa Mar 16, 2024
88d3a86
Merge pull request #1765 from nodeSolidServer/fix/issue#1764
bourgeoa Mar 16, 2024
c38fe6e
fix 1774: changed account manager error checking, changed loadUser fu…
zg009 Mar 16, 2024
f669e5c
fix issue 1770 and 1774: added tests and functionality from PR 1770, …
zg009 Mar 16, 2024
bc35517
Merge pull request #1775 from nodeSolidServer/fix/issue#1774
zg009 Mar 17, 2024
70524b2
Update reset-link-sent.hbs
bourgeoa Mar 17, 2024
70ee439
Merge pull request #1776 from nodeSolidServer/fix/issue#1774
bourgeoa Mar 17, 2024
478421d
Update password-reset-email-request.js
bourgeoa Mar 18, 2024
f5652f3
Merge pull request #1777 from nodeSolidServer/fix/issue#1774
bourgeoa Mar 18, 2024
e949377
shaky fix for issue#1692
zg009 Mar 21, 2024
4d029be
removed resource from originally failing tests
zg009 Mar 21, 2024
d5a6103
Update lib/handlers/put.js
zg009 Mar 21, 2024
1a8987e
Update lib/handlers/put.js
zg009 Mar 21, 2024
08886af
Update lib/handlers/put.js
zg009 Mar 21, 2024
52480a3
moved invalid suffix logic to LDP class, write test for patch in patc…
zg009 Mar 21, 2024
4becb86
force resolve
zg009 Mar 21, 2024
51163e9
added invalid suffix check to ldp and test in http-test
zg009 Mar 22, 2024
d56cdf0
only for containers
bourgeoa Mar 23, 2024
e4bb2e9
fixed todo and added .meta test in patch-test
zg009 Mar 25, 2024
3afe36b
added example test and recursive suffix checking in ldp.post
zg009 Mar 29, 2024
c68a304
renamed example test
zg009 Mar 29, 2024
d419882
update POST create container test
bourgeoa Mar 29, 2024
7f8ff3f
Merge branch 'fix/issue#1692' of https://github.com/solid/node-solid-…
bourgeoa Mar 29, 2024
a5b8e48
removed some comments
zg009 Mar 29, 2024
f6ef443
Update lib/ldp.js
zg009 Apr 1, 2024
141868d
Update lib/ldp.js
zg009 Apr 1, 2024
be1429e
Update test/integration/http-test.js
zg009 Apr 1, 2024
47a66d6
Update test/integration/http-test.js
zg009 Apr 1, 2024
d9a6865
Update test/integration/http-test.js
zg009 Apr 1, 2024
81d8dfd
Update test/integration/http-test.js
zg009 Apr 1, 2024
0b6df62
Merge pull request #1778 from nodeSolidServer/fix/issue#1692
bourgeoa Apr 3, 2024
f97d7db
mashlib@1.8.10
bourgeoa Apr 3, 2024
21096e2
5.7.10
bourgeoa Apr 3, 2024
86784bd
describe AccountManager (OIDC account creation tests) working with no…
zg009 Apr 20, 2024
6fd2354
describe Singue User Signup page working with node v15
zg009 Apr 20, 2024
8590a8f
account-creation-oidc-test passing all with node 15
zg009 Apr 20, 2024
ab4dc83
account template test has weird expectation, not sure how related?
zg009 Apr 20, 2024
2971101
acl-oidc-test appears to be passing, should 4 test cases that are ski…
zg009 Apr 20, 2024
9781e02
authentication-oidc-test appears to be passing on node v 15
zg009 Apr 20, 2024
2a6ea44
header-test commented out code works node v15
zg009 Apr 20, 2024
0c1dce0
fixing ldp tests
zg009 Apr 20, 2024
81577bf
fixing ldp tests more
zg009 Apr 20, 2024
2fbb0b1
fixed more ldp tests
zg009 Apr 20, 2024
aaa82b8
fixed graph tests
zg009 Apr 20, 2024
cbaae77
putGraph and getGraph work in ldp-test
zg009 Apr 20, 2024
73456f3
delete passing in ldp-test
zg009 Apr 20, 2024
0d59524
ldp-test mostly working, need way to test listContainer and overQuota
zg009 Apr 20, 2024
5a60c6f
all but listContainer working in ldp-test
zg009 Apr 20, 2024
cdc052d
remove debug console.log statements
zg009 Apr 21, 2024
e589850
ldp tests all passing
zg009 Apr 21, 2024
49e8e81
all FIX1502 addressed
zg009 Apr 21, 2024
d173bca
4 tests in LDP Skipped - do not evaluate properly, conditionals also …
zg009 Apr 21, 2024
0806b7f
added cleanup for account manager test, need two tests to be fixed
zg009 Apr 21, 2024
f3e34c1
fixed broken account manager tests, added files for support
zg009 Apr 21, 2024
60ef3aa
Merge pull request #1763 from ewingson/main
bourgeoa Apr 22, 2024
bb1e52b
Merge pull request #1782 from nodeSolidServer/fix/issue#1502
bourgeoa Apr 30, 2024
f69653b
mashlib@1.8.11
bourgeoa Apr 30, 2024
07ee53c
5.7.11
bourgeoa Apr 30, 2024
0ad5455
test: added accountTemplate for registering hostname at app creation …
zg009 May 11, 2024
eee6488
added logic for relative uri maybe
zg009 May 11, 2024
2a1f7e4
removed training wheels to not break test cases
zg009 May 11, 2024
b795602
added test cases for relative webid change
zg009 May 11, 2024
72b20b4
minor cleaning and variable clarity
zg009 May 13, 2024
18b7cb3
renamed example var
zg009 May 13, 2024
1034123
check against externalWebId
bourgeoa May 17, 2024
99b3219
webId relative to pod
bourgeoa May 21, 2024
a5ab656
removed hostname registration deleted fn
zg009 May 21, 2024
3f2eb27
added function to also strip port, updated test cases
zg009 May 21, 2024
6a44656
use webUri.origin and update tests
bourgeoa May 22, 2024
5e71231
Update put.js send 200 or 201 depending on prexistance of resource
jeff-zucker May 24, 2024
d602ad8
Update put.js
jeff-zucker May 24, 2024
12d3405
Update put.js 200->204 when replacing
jeff-zucker May 25, 2024
df9beab
Update lib/handlers/put.js
CxRes May 29, 2024
43bf813
tests and cleaning
bourgeoa May 30, 2024
f589a20
Merge pull request #1785 from nodeSolidServer/jeff-zucker-patch-1
bourgeoa May 31, 2024
d7b7bd9
fix: Return 201 when PATCH creates a new resource
CxRes May 31, 2024
a69da13
replace res.sendStatus with res.status and update tests
bourgeoa Jun 2, 2024
b8e9aed
Use Double Quotes in package.json > scripts
CxRes Jun 2, 2024
843c771
Merge pull request #1787 from nodeSolidServer/CxRes-patch-lint-script…
bourgeoa Jun 15, 2024
f5b2b5c
Merge pull request #1786 from nodeSolidServer/CxRes-patch-set-status-…
jeff-zucker Aug 28, 2024
21b15be
feat: PREP Notifications
CxRes Aug 30, 2024
f4fb5a0
feat: Add Solid-PREP Notifications
CxRes Aug 30, 2024
109ce09
Bump CI and Docker to node v22
CxRes Aug 30, 2024
7b23e57
Replace nyc with c8
CxRes Aug 30, 2024
3d93e13
fix: Correct Parenting for Solid-PREP Notifications
CxRes Sep 8, 2024
fd99081
Step Down to Node 20
CxRes Sep 8, 2024
8021633
fix: Relax Content-Type Checks in Integration Tests
CxRes Sep 8, 2024
e0ebc31
fix: Repository for Surface Tests
CxRes Sep 9, 2024
beaaa03
chore: Bump Express PREP
CxRes Oct 7, 2024
bda034a
feat: Add Tests for PREP
CxRes Oct 8, 2024
b0e7eb0
feat: Add Flag to disable PREP
CxRes Oct 10, 2024
6a287e4
refactor: Remove Commented Code in `get.js`
CxRes Oct 13, 2024
a6067e3
chore: Bump PREP Dependencies
CxRes Oct 19, 2024
568b58a
fix: Send Parent Notifications on Root
CxRes Oct 23, 2024
3fa2be9
fix: Activity is `as:Add` on Container POST
CxRes Oct 23, 2024
6f4b22b
fix: Set `target` on Container POST
CxRes Oct 23, 2024
2a277ff
fix: Set `origin` when Contained Resource is Removed
CxRes Oct 23, 2024
d08a88f
test: Notification when Creating a Container with POST
CxRes Oct 23, 2024
33997ae
chore: Bump Express PREP
CxRes Oct 23, 2024
1f6c16f
fix: Do Not Overwrite `req.url` on Container PUT
CxRes Oct 23, 2024
c933a74
test: Notification when Creating/Deleting Container in Container
CxRes Oct 23, 2024
2da77b0
refactor: Add Debugging for Failed Notifications
CxRes Oct 23, 2024
44dc0bc
fix: Correctly Set Location on non-RDF Notifications
CxRes Oct 23, 2024
29f3e08
rewrite create container to keep req
bourgeoa Nov 4, 2024
fd5837c
Merge pull request #1797 from nodeSolidServer/basic-prep
bourgeoa Nov 4, 2024
671586c
Update README.md
bourgeoa Nov 4, 2024
953785d
5.8.0
bourgeoa Nov 5, 2024
a8bf8c4
Update test_image_foundations.py
bourgeoa Nov 5, 2024
417bf13
Merge branch 'resourceMapper' of https://github.com/solid/node-solid-…
bourgeoa Nov 5, 2024
1b1989e
package-lock.json
bourgeoa Nov 5, 2024
cb804ab
Merge branch 'main' into fix#1783
bourgeoa Nov 5, 2024
fa7e7e5
Merge pull request #1784 from nodeSolidServer/fix#1783
bourgeoa Nov 5, 2024
a3ab58e
5.8.1
bourgeoa Nov 6, 2024
4ce0c0e
Merge branch 'main' of https://github.com/solid/node-solid-server int…
bourgeoa Nov 6, 2024
41a2ba3
5.8.2
bourgeoa Nov 6, 2024
ef464ae
Update ci.yml 20.18.2
bourgeoa Apr 14, 2025
5919191
Update account-creation-oidc-test.js
bourgeoa Apr 14, 2025
f9753fc
Update ci.yml 20.19.0
bourgeoa Apr 14, 2025
90df148
Update account-creation-oidc-test.js skip
bourgeoa Apr 14, 2025
dd26280
skip
bourgeoa Apr 14, 2025
5d40a8e
Merge branch 'tag-v5.8.2' of https://github.com/bourgeoa/node-solid-s…
bourgeoa Apr 14, 2025
64640a8
Update package.json rm test/integration
bourgeoa Apr 14, 2025
7c0e884
Update package.json account*
bourgeoa Apr 14, 2025
59b79c4
rm account*
bourgeoa Apr 14, 2025
bb6d756
Merge branch 'tag-v5.8.2' of https://github.com/bourgeoa/node-solid-s…
bourgeoa Apr 14, 2025
5a0c1e2
restore package.json
bourgeoa Apr 14, 2025
fb3dbc9
addback account-template-test.js
bourgeoa Apr 15, 2025
964cc8b
addback test/integration/account-manager-test.js
bourgeoa Apr 15, 2025
9f1b958
addback test/integration/account-creation-tls-test.js
bourgeoa Apr 15, 2025
9edfd80
add account-creation-oidc-test.js last test
bourgeoa Apr 16, 2025
6a90857
restore account-creation-oidc-test.js
bourgeoa Apr 16, 2025
5a8d3f3
test rmDir
bourgeoa Apr 16, 2025
7edd51e
restore cleanDir
bourgeoa Apr 16, 2025
bb0bf18
test rm
bourgeoa Apr 17, 2025
0e4b736
test rm1
bourgeoa Apr 17, 2025
b837b3b
test rm2
bourgeoa Apr 17, 2025
419ed3e
delete
bourgeoa Apr 17, 2025
48924e2
rename to www
bourgeoa Apr 17, 2025
c2e5463
run test/unit first
bourgeoa Apr 17, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
10 changes: 10 additions & 0 deletions .acl
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
# Root ACL resource for the root
@prefix acl: <http://www.w3.org/ns/auth/acl#>.
@prefix foaf: <http://xmlns.com/foaf/0.1/>.

<#public>
a acl:Authorization;
acl:agentClass foaf:Agent; # everyone
acl:accessTo </>;
acl:default </common/>;
acl:mode acl:Read.
88 changes: 82 additions & 6 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -5,9 +5,10 @@ name: CI

on:
push:
branches: [ master ]
branches: [ main ]
tags: ['*']
pull_request:
branches: [ master ]
branches: [ main ]

jobs:
build:
Expand All @@ -16,11 +17,34 @@ jobs:

strategy:
matrix:
node-version: [10.x, 12.x, 14.x]
node-version: [ '>=20.18.2' ]
os: [ubuntu-latest]

steps:
- uses: actions/checkout@v2
- uses: actions/checkout@v4

# extract repository name
- if: github.event_name == 'pull_request'
run: echo "REPO_NAME=${{ github.event.pull_request.head.repo.full_name }}" >> $GITHUB_ENV

- if: github.event_name != 'pull_request'
run: echo "REPO_NAME=${GITHUB_REPOSITORY}" >> $GITHUB_ENV

# extract branch name
- if: github.event_name == 'pull_request'
run: echo "BRANCH_NAME=${GITHUB_HEAD_REF}" >> $GITHUB_ENV

- if: github.event_name != 'pull_request'
run: echo "BRANCH_NAME=${GITHUB_REF#refs/heads/}" >> $GITHUB_ENV

# print repository name
- name: Get repository name
run: echo 'The repository name is' $REPO_NAME

# print branch name
- name: Get branch name
run: echo 'The branch name is' $BRANCH_NAME

- name: Use Node.js ${{ matrix.node-version }}
uses: actions/setup-node@v1
with:
Expand All @@ -29,9 +53,61 @@ jobs:
# test code
- run: npm run standard
- run: npm run validate
- run: npm run nyc
- run: npm run c8
# Test global install of the package
- run: npm pack .
- run: npm install -g solid-server-*.tgz
# Run the Solid test-suite
- run: bash test/surface/run-solid-test-suite.sh
- run: bash test/surface/run-solid-test-suite.sh $BRANCH_NAME $REPO_NAME

# TODO: The pipeline should automate publication to npm, so that the docker build gets the correct version
# This job will only dockerize solid-server@latest / solid-server@<tag-name> from npmjs.com!
docker-hub:
needs: build
name: Publish to docker hub
if: github.event_name != 'pull_request'
runs-on: ubuntu-latest
steps:

- uses: actions/checkout@v4

- uses: olegtarasov/get-tag@v2.1
id: tagName
with:
tagRegex: "v?(?<version>.*)"

- name: Lint dockerfile
working-directory: docker-image
run: pwd && ls -lah && make lint

- name: Run tests
working-directory: docker-image
run: SOLID_SERVER_VERSION=${{ steps.tagName.outputs.version }} make test

- name: Set up QEMU
uses: docker/setup-qemu-action@v1

- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v1

- name: Docker meta
id: meta
uses: docker/metadata-action@v3
with:
images: nodesolidserver/node-solid-server

- name: Login to DockerHub
uses: docker/login-action@v1
with:
username: ${{ secrets.DOCKERHUB_USERNAME }}
password: ${{ secrets.DOCKERHUB_TOKEN }}

- name: Build and push
id: docker_build
uses: docker/build-push-action@v2
with:
context: ./docker-image/src
build-args: SOLID_SERVER_VERSION=${{ steps.tagName.outputs.version }}
push: true
tags: ${{ steps.meta.outputs.tags }}
labels: ${{ steps.meta.outputs.labels }}
3 changes: 2 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -14,4 +14,5 @@
/data
/coverage
/node_modules
/npm-debug.log
/npm-debug.log
.history/
2 changes: 1 addition & 1 deletion .nvmrc
Original file line number Diff line number Diff line change
@@ -1 +1 @@
13.14.0
v18.19.0
15 changes: 15 additions & 0 deletions .well-known/.acl
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
# ACL for the default .well-known/ resource
# Server operators will be able to override it as they wish
# Public-readable

@prefix acl: <http://www.w3.org/ns/auth/acl#>.
@prefix foaf: <http://xmlns.com/foaf/0.1/>.

<#public>
a acl:Authorization;

acl:agentClass foaf:Agent; # everyone

acl:accessTo </.well-known/>;

acl:mode acl:Read.
1 change: 1 addition & 0 deletions Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@ FROM node:lts
RUN mkdir -p /usr/src/app
WORKDIR /usr/src/app
COPY package.json /usr/src/app/
COPY package-lock.json /usr/src/app/
RUN npm install
COPY . /usr/src/app

Expand Down
42 changes: 32 additions & 10 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,8 @@

`solid-server` lets you run a Solid server on top of the file-system. You can use it as a [command-line tool](https://github.com/solid/node-solid-server/blob/master/README.md#command-line-usage) (easy) or as a [library](https://github.com/solid/node-solid-server/blob/master/README.md#library-usage) (advanced).

The [solid test suite](https://github.com/nodeSolidServer/node-solid-server/blob/main/test/surface/run-solid-test-suite.sh) runs as part of GitHub Actions on this repository, ensuring that this server is always (to the best of our knowledge) fully spec compliant.

## Solid Features supported
- [x] [Linked Data Platform](http://www.w3.org/TR/ldp/)
- [x] [Web Access Control](http://www.w3.org/wiki/WebAccessControl)
Expand All @@ -28,12 +30,15 @@ You can install and run the server either using Node.js directly or using
first approach, for the second approach see the section [use Docker](#use-docker)
Section below.

**Note**: If using Git for Windows, it is helpful to use the -verbose flag to see the progress of the install.

To install, first install [Node](https://nodejs.org/en/) and then run the following

```bash
$ npm install -g solid-server
```


### Run a single-user server (beginner)

The easiest way to setup `solid-server` is by running the wizard. This will create a `config.json` in your current folder
Expand Down Expand Up @@ -64,6 +69,15 @@ $ solid start --root path/to/folder --port 8443 --ssl-key path/to/ssl-key.pem --
# Solid server (solid v0.2.24) running on https://localhost:8443/
```

By default, `solid` runs in `debug all` mode. To stop the debug logs, use `-q`, the quiet parameter.

```bash
$ DEBUG="solid:*" solid start -q
# use quiet mode and set debug to all
# DEBUG="solid:ACL" logs only debug.ACL's

```

### Running in development environments

Solid requires SSL certificates to be valid, so you cannot use self-signed certificates. To switch off this security feature in development environments, you can use the `bin/solid-test` executable, which unsets the `NODE_TLS_REJECT_UNAUTHORIZED` flag and sets the `rejectUnauthorized` option.
Expand Down Expand Up @@ -124,7 +138,7 @@ Your users will have a dedicated folder under `./data` at `./data/<username>.<yo
> To use Gmail you may need to configure ["Allow Less Secure Apps"](https://www.google.com/settings/security/lesssecureapps) in your Gmail account unless you are using 2FA in which case you would have to create an [Application Specific](https://security.google.com/settings/security/apppasswords) password. You also may need to unlock your account with ["Allow access to your Google account"](https://accounts.google.com/DisplayUnlockCaptcha) to use SMTP.

also add to `config.json`
```
```
"useEmail": true,
"emailHost": "smtp.gmail.com",
"emailPort": "465",
Expand Down Expand Up @@ -192,6 +206,7 @@ $ solid start --help
--multiuser Enable multi-user mode
--idp [value] Obsolete; use --multiuser
--no-live Disable live support through WebSockets
--no-prep Disable Per Resource Events
--proxy [value] Obsolete; use --corsProxy
--cors-proxy [value] Serve the CORS proxy on this path
--suppress-data-browser Suppress provision of a data browser
Expand Down Expand Up @@ -237,21 +252,27 @@ We have automatic builds set up, so commits to master will trigger a build of ht

### Development usage

If you want to use Docker in development, then you can build it locally with:
If you want to use Docker in development, you can build and run the image locally with either docker-compose —

```bash
git clone https://github.com/solid/node-solid-server
cd node-solid-server
docker build -t node-solid-server .
docker-compose up -d
```

Run with:
— or these manual commands —

```bash
git clone https://github.com/solid/node-solid-server
cd node-solid-server
docker build -t node-solid-server .

docker run -p 8443:8443 --name solid node-solid-server
```


This will enable you to login to solid on https://localhost:8443 and then create a new account
but not yet use that account. After a new account is made you will need to create an entry for
but not yet use that account. After a new account is made you will need to create an entry for
it in your local (/etc/)hosts file in line with the account and subdomain, i.e. --

```pre
Expand All @@ -260,16 +281,16 @@ it in your local (/etc/)hosts file in line with the account and subdomain, i.e.

You can modify the config within the docker container as follows:

- Copy the `config.json` to the current directory with:
- Copy the `config.json` to the current directory with:
```bash
docker cp solid:/usr/src/app/config.json .
```
- Edit the `config.json` file
- Copy the file back with
- Copy the file back with
```bash
docker cp config.json solid:/usr/src/app/
```
- Restart the server with
- Restart the server with
```bash
docker restart solid
```
Expand Down Expand Up @@ -362,7 +383,8 @@ In order to really get a feel for the Solid platform, and to test out `solid`,
you will need the following:

1. A WebID profile and browser certificate from one of the Solid-compliant
identity providers, such as [solid.community](https://solid.community).
identity providers, such as [solidcommunity.net](bourgeoa
community.net).

2. A server-side SSL certificate for `solid` to use (see the section below
on creating a self-signed certificate for testing).
Expand Down Expand Up @@ -444,7 +466,7 @@ You can receive or provide help too:
- [NSS Gitter channel](https://gitter.im/solid/node-solid-server) for specific (installation) advice about this code base
- [Create a new issue](https://github.com/solid/node-solid-server/issues/new) to report bugs
- [Fix an issue](https://github.com/solid/node-solid-server/issues)
- Reach out to Jackson at jacksonm@inrupt.com to become more involved in maintaining Node Solid Server
- Reach out to @bourgeoa at alain.bourgeois10@gmail.com to become more involved in maintaining Node Solid Server

Have a look at [CONTRIBUTING.md](https://github.com/solid/node-solid-server/blob/master/CONTRIBUTING.md).

Expand Down
18 changes: 18 additions & 0 deletions bin/config.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
{
"root": "/Users/imyshor/Projects/solid/solidos/workspaces/node-solid-server/bin/data",
"port": "8443",
"serverUri": "https://localhost:8443",
"webid": false,
"mount": "/",
"configPath": "./config",
"configFile": "./config.json",
"dbPath": "./.db",
"sslKey": "../",
"sslCert": "../",
"multiuser": false,
"server": {
"name": "localhost",
"description": "",
"logo": ""
}
}
8 changes: 7 additions & 1 deletion bin/lib/options.js
Original file line number Diff line number Diff line change
Expand Up @@ -50,7 +50,7 @@ module.exports = [
},
{
name: 'config-path',
question: 'Path to the config directory (for example: /etc/solid-server)',
question: 'Path to the config directory (for example: ./config)',
default: './config',
prompt: true
},
Expand Down Expand Up @@ -143,6 +143,12 @@ module.exports = [
flag: true,
default: false
},
{
name: 'no-prep',
help: 'Disable Per Resource Events',
flag: true,
default: false
},
// {
// full: 'default-app',
// help: 'URI to use as a default app for resources (default: https://linkeddata.github.io/warp/#/list/)'
Expand Down
2 changes: 1 addition & 1 deletion bin/solid
Original file line number Diff line number Diff line change
@@ -1,3 +1,3 @@
#!/usr/bin/env node
#!/usr/bin/env -S node --experimental-require-module
const startCli = require('./lib/cli')
startCli()
2 changes: 1 addition & 1 deletion bin/solid.js
Original file line number Diff line number Diff line change
@@ -1,3 +1,3 @@
#!/usr/bin/env node
#!/usr/bin/env -S node --experimental-require-module
const startCli = require('./lib/cli')
startCli()
Loading
Loading