1
Fork 0
Commit Graph

1231 Commits

Author SHA1 Message Date
Lajos Koszti d949acaa17
fix: break thumbnails in sidebar to multiple lines
In the sidebar if when I have more than 3 thumbnails, only the first 3
is visible. That makes very hard to view or edit the faces that are
recognized on the photo.

The fix is to break the thumbnails to new line when needed by adding the
flex-wrap class to the container ul element.
2024-08-11 10:21:17 +02:00
Googol Lee cf1a66975d
API server listens with the address of `PHOTOVIEW_LISTEN_IP`, #1010. (#1014)
Fix the listened host reference in the `main()` function
2024-08-09 17:32:07 +03:00
Googol Lee ebcbe6c057
Update workflow using Dockerfile. (#1003) 2024-08-03 23:17:54 +02:00
Kostiantyn 4d9ce30583
Bump 'crypto' and 'gorm' versions based on Dependabot PRs (#1008)
Co-authored-by: Konstantin Koval
2024-08-03 19:36:18 +03:00
Googol Lee bdae9a67ce
Add `Set up Docker development environment` in README.md (#997) 2024-07-23 21:56:30 +02:00
Googol Lee 0345bc1481
Update `Set up development environment` in README.md. (#995) 2024-07-16 23:10:38 +02:00
dependabot[bot] 7559a609aa
Bump the npm_and_yarn group across 1 directory with 4 updates (#991)
Bumps the npm_and_yarn group with 4 updates in the /ui directory: [postcss](https://github.com/postcss/postcss), [braces](https://github.com/micromatch/braces), [ejs](https://github.com/mde/ejs) and [ws](https://github.com/websockets/ws).


Updates `postcss` from 8.4.38 to 8.4.39
- [Release notes](https://github.com/postcss/postcss/releases)
- [Changelog](https://github.com/postcss/postcss/blob/main/CHANGELOG.md)
- [Commits](https://github.com/postcss/postcss/compare/8.4.38...8.4.39)

Updates `braces` from 3.0.2 to 3.0.3
- [Changelog](https://github.com/micromatch/braces/blob/master/CHANGELOG.md)
- [Commits](https://github.com/micromatch/braces/compare/3.0.2...3.0.3)

Updates `ejs` from 3.1.8 to 3.1.10
- [Release notes](https://github.com/mde/ejs/releases)
- [Commits](https://github.com/mde/ejs/compare/v3.1.8...v3.1.10)

Updates `ws` from 7.5.6 to 7.5.10
- [Release notes](https://github.com/websockets/ws/releases)
- [Commits](https://github.com/websockets/ws/compare/7.5.6...7.5.10)

---
updated-dependencies:
- dependency-name: postcss
  dependency-type: direct:production
  dependency-group: npm_and_yarn
- dependency-name: braces
  dependency-type: indirect
  dependency-group: npm_and_yarn
- dependency-name: ejs
  dependency-type: indirect
  dependency-group: npm_and_yarn
- dependency-name: ws
  dependency-type: indirect
  dependency-group: npm_and_yarn
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-07-10 19:29:42 +03:00
Blake Schafer dad4533983
Create CONTRIBUTING.md (#943)
* Create CONTRIBUTING.md

Creating a resource file for any developer who wants to contribute to this open-source project. Adding more details than what was already provided, giving a detailed walkthrough for newcomers on how to make changes in the code.

* Implement the suggestions from the feedback, as well as merge the template from the discussion #934

---------

Co-authored-by: Konstantin Koval <kkb@ukr.net>
2024-07-09 20:56:01 +02:00
Googol Lee 365328457e
Building scripts for apt/homebrew platforms. (#993) 2024-07-09 12:34:55 +02:00
Googol Lee 2f8f01b6d3
Add nodemon for ui developing. 2024-07-07 10:05:26 +02:00
Googol Lee eab10af4a3
Remove loading env from tests. (#988)
* Remove loading env from tests.

* Rollback the test workflow.
2024-07-03 21:28:36 +03:00
Lajos Koszti 10e9e354b5
order root albums by path on settings page (#983)
Once you have more than a few paths assigned to a user, it becomes
quite hard to oversee the list.

Personally, I would add my albums to Photoview one by one, so I can
manage the processing better. For example, I can review and fix the face
recognition for one new album at a time, and I don't need to deal with
too much data.
Since I started to add the albums in a random order, it's relatively
hard to find which album is added and which is not.

An easy fix is to order the photo paths by their name.

- Extended the query of the rootAlbums to order them by path
2024-07-01 20:04:50 +02:00
Kostiantyn df9af39a16
Validate incoming GPS data (#951)
* Validate incoming GPS data and throw an error if it is incorrect, storing Null values

* Extracted GPS data processing to function in external parser; optimized IF in internal parser; removed unnecessary comments; set exact values for positive test

* Add the migration for removing existing invalid GPS data and its test; added better errors to asserts in the GPS validation test

* Install FFmpeg and ExifTool on the API unit-test environment

* Fix 'stripped.jpg', 'IncorrectGPS.jpg', and 'CorrectGPS.jpg' tests for the external parser

* Optimized data validation in the external parser, returned error by the internal parser for invalid data, updated test to expect errors and handle them

* Switched from error to log entry in case of incorrect GPS data, as error handling is not so transparent in the internal parser

---------

Co-authored-by: Konstantin Koval
2024-06-29 10:32:48 +03:00
Kostiantyn 55d6097cc1
Update GO version in the `go.mod` and read it by the job to setup the testing environment for unit tests (#980)
Co-authored-by: Konstantin Koval
2024-06-28 14:59:31 +02:00
Googol Lee e36b09753a
Bump go version and modules. (#976)
* Bump go version to 1.22. Bump all go module to the newest version, except pinning libheif@v1.15.1 to match the c lib version in Debian bookworm.

* Update go_wrapper.sh to fit golang image.

* Update the way to set go envs.

* Test against go 1.22

* Set default shell for all building stage in Dockerfile.
2024-06-28 10:10:18 +03:00
Googol Lee 1cd34109b6
Optimize user's album filter. #705 (#962) 2024-06-27 21:21:09 +02:00
Kostiantyn f79d379e38
Urgent small fixes in the Dockerfile and Compose configs (#972)
* Freeze UID and GID for the `photoview` user inside the image; added alternative permission configs description to the Readme and Makefile (as a comment); switched the default tag in the compose from `2` to `master`, as this is the most common user misunderstanding according to the issues and Discord questions

* Revert back to the tag `2` with the assumption of the release happening soon

---------

Co-authored-by: Konstantin Koval
2024-06-23 14:28:02 +02:00
Kostiantyn cd8d086429
Fix missing space and word duplication (#964)
Co-authored-by: Konstantin Koval <kkb@ukr.net>
2024-06-17 13:27:05 +01:00
Kostiantyn df1610b13c
change healthcheck command for MariaDB container (#963)
Co-authored-by: Konstantin Koval
2024-06-02 19:02:14 +01:00
Googol Lee ddacba85db
Fix timeline order with sqlite3. It should be ordered as MySQL and PGSQL like (year, month, day). (#954) 2024-05-31 09:35:41 +01:00
Kostiantyn 6693920b61
Configure shell to fail if any part of piped command chain fails. Fix Hadolint issue DL4006 (#947)
Co-authored-by: Konstantin Koval <kkb@ukr.net>
2024-05-31 09:34:46 +01:00
Kostiantyn d47bca280e
configure SQLite to work in multi-connection mode, so it is not locked when scanner runs a job (#955)
Co-authored-by: Konstantin Koval <kkb@ukr.net>
2024-05-31 09:32:47 +01:00
David Valdez 7c7089e320
Fix download path on custom base path (#889)
Co-authored-by: Konstantin Koval <kkb@ukr.net>
2024-05-20 11:31:53 +01:00
Kostiantyn 0193f7703d
Refactor docker deployment and user setup (#863)
* Fix #862, address #826 and maybe some other tickets: reimplemented the docker-compose user setup to enhance product setup experience and cover much more cases.

* make unique DB container name and use it in communication from Photoview

* Removed unnecessary healthcheck for photoview from docker-compose.example.yml, as it is defined in the Dockerfile; optimized Dockerfile combining all RUN directives of PROD stage into 1, which will produce single layer and save some space; added Dockerfile-dev, docker-compose-dev.yml, and new "dev" and "dev-down" directives into Makefile, which allows to setup development env in Docker. Instructions of how to use it are in comments at the beginning of Dockerfile-dev and docker-compose-dev.yml files

* Set RWX permissions to the application's working folder for any user, so that the image could be later run with non-root permissions and the app still be able to do needed operations in the FS

* Enhanced the "Getting started" section in the readme; added the `help` target and enhanced comments in the Makefile; commented out the `docker system prune -f` with the comment about the command and why it is there; added optional and commented by default `7zz` commands to the `backup` section of the Makefile

* Use `slim` base image for final photoview image

* Implement SQLite support according to the PR #851

* Removed deprecated `version` line from compose files; optimized dockerfile to build with less layers and run as non-root; mapped only Photoview related services to Watchtower by default instead of updating all running images on a host; added template for Postgres to the .env; reverted compose executable definition, so the new compose is called when present; added a tip about `lnav` to help

* fix a typo in the username; add support of PostgreSQL; split and optimize backup target in Makefile

* Fixed some typos and styling in Readme, excluded dev-environment setup from the PR; added a list of tips on how to secure Photoview in the Advanced setup section of Readme

* Implemented many security improvements, suggested by @Omar007, switched to the dedicated Darktable's repo to install the latest released version, as asked in #935; switched Watchtower to labels instead of profiles

* forgot the compose file

* move face models back to /app folder; comment out and document unnecessary vars in compose; fix a typo in a few vars

* Exclude Makefile in the root folder from git; documented multiple mounts case better; fixed incorrect SQLite DB path

* Fixed several bugs after complete testing cycle with all 3 DBs

* removed hardcoded port in Dockerfile

* Pin the major version for the `photoview` image for stability

* Revert back to the port 80 inside the container on product owner's request

* Provide a minimal compose file and update the readme accordingly

* Handle incorrect media file and folder permissions; set correct permissions for storage folder; fix healthcheck command for postgres

---------

Co-authored-by: Konstantin Koval <kkb@ukr.net>
2024-05-15 10:58:02 +02:00
Jordan Hellier 4133694bc2
fix: remove logging of database url in place for just dialect (#940) 2024-04-27 13:18:56 +01:00
Alex Kabakaev d6f34211a1
fix false trigger of DB migration on sqlite (#936) 2024-04-26 05:46:32 +01:00
Jordan Hellier f900d55300
Fix audit issues in production (#933)
* chore: upgrade api dependencies to latest compatible version

* chore: update ui dependencies first pass

* chore: migrate ui dependency to latests

Migrates i18next-parser from 6.x -> 8.x per documentation

* chore: add missing tools file

* chore: regenerate files

* chore: fix docker build from incorrect depedency

bookworms latest stable version of libheif-dev is 1.15.1
2024-04-11 22:21:08 +01:00
Simon Ser d0d0bf21bc
Make face detection optional at build-time (#881)
Add a "no_face_detection" build tag to disable face detection
when building. This is useful when installing the face detection
dependencies is undesirable and cuts down build times (e.g. on a
Raspberry Pi).
2024-04-11 22:20:09 +01:00
Connor 896cd1c2fe
Remove login page non-empty password requirement (#828)
* Remove login page non-empty password requirement

* Remove required property from password register
2024-04-08 07:22:50 +01:00
Konstantin b2d591bd1b
Don't stop scanning album on media fail (#892)
* Don't stop scanning album on media fail

* Update api/scanner/scanner_album.go

accepting suggestion from Jordan

Co-authored-by: Jordan Hellier <13520761+jordy2254@users.noreply.github.com>

---------

Co-authored-by: Konstantin Koval <kkb@ukr.net>
Co-authored-by: Jordan Hellier <13520761+jordy2254@users.noreply.github.com>
2024-03-30 11:04:03 +02:00
Alex Kabakaev 153f37e5fb
move mp4 moov atom to the beginning (#883)
Video playback starts faster in browsers.
2024-03-30 09:01:16 +00:00
Yo Sev 9c85663522
Fix invalid UTC offset during datetime parsing (#823) 2024-03-30 07:57:21 +01:00
Ale C 31ccb9aad3
chore(docker-compose): add sqlite variable and volumes example (#851) 2024-03-29 21:09:20 +00:00
Dorian 87365c1a62
feat: complete PL translation (#909) 2024-03-29 21:07:41 +00:00
cicadabear a99f7aa203
add cross compile support for arm64 to amd64 (#888) 2024-03-29 20:18:08 +00:00
Andreas 68cc2a0eee
reordered cli arguments for ffmpeg to improve speed to generate thumbnails from videos (#917) 2024-03-29 19:35:50 +00:00
Davide Cavestro b8504c47be
Fix UI not serving media and tests expecting localhost:3000 as base URL (#874)
* fix UI tests expecting localhost:3000 as base URL

* fix: avoid prefixing UI domain when serving media URLs
2024-03-29 15:49:50 +02:00
Konstantin a90f30391c
Add Ukrainian translation (#875) 2024-03-24 22:42:44 +01:00
Davide Cavestro 1e981339a0
Update italian translation (#873)
Add missing labels
2024-03-24 20:25:04 +02:00
Viktor Strate Kløvedal 8cdc4cd136
Merge pull request #865 from photoview/fix-build-pipeline
Fix build pipeline
2023-07-10 22:49:49 +02:00
viktorstrate 5c1f8b4632
clean up build action 2023-07-10 22:49:01 +02:00
viktorstrate b2a79a4c9d
update and simplify github build action 2023-07-10 18:57:50 +02:00
Viktor Strate Kløvedal 228f2cc1e7
Merge pull request #842 from secco04/patch-2
update german translation
2023-05-11 17:59:18 +02:00
4ich aed0a17166
update german translation
fixing my mistake on timeline year selector
missing label for share/password protection and expiration,
missing label for thumbnail settings ...
2023-05-06 17:35:48 +02:00
Viktor Strate Kløvedal 9364662db8
Merge pull request #841 from secco04/patch-1 2023-05-06 15:58:54 +02:00
4ich fe4e2ffc06
Updated Translation for German
i'm hoping i got all the fields filled, where the german translation was missing. 
i also found a spelling mistage  in the password reset dialogue and a "usernamevar" wich is not yet used.
2023-05-06 15:27:44 +02:00
Viktor Strate Kløvedal c38f8a43c3
Merge pull request #838 from djvaldez/fix-custom-basepath
Fix custom basepath in React components
2023-05-01 15:02:36 +02:00
David Valdez efda44a20b Fix case of double slash 2023-04-30 17:17:59 -05:00
David Valdez 18c9acfa81 Merge branch 'dev' of github.com:djvaldez/photoview into fix-custom-basepath 2023-04-29 20:38:28 -05:00
David Valdez 170f1ac59c Fix for login URL 2023-04-30 01:37:36 +00:00