* fix pocket parsing error
Signed-off-by: bakito <github@bakito.ch>
* add tests forpocket csv
Signed-off-by: bakito <github@bakito.ch>
* Use file name from test case
* fix lint ant test issues
Signed-off-by: bakito <github@bakito.ch>
---------
Signed-off-by: bakito <github@bakito.ch>
Co-authored-by: Felipe Martin <812088+fmartingr@users.noreply.github.com>
* refactor: tags api into v1 api
* feat: tags api huge refactor
* fix: pg & sqlite tests
* tests: added more tests
* fix: bug on mysql bookmark and tag creation
* test: re-enabled test
* tests: slices test
* tests: model bookmarks
* test: use filepath.Join for path construction in bookmark tests
* list account and create account
* deleteaccount (wip)
* remove old accounts code
* fix from merge
* remove serve method from makefile
* ListAccounts, password hash on domain
* make lint
* more permissive assertion
* rename test
* update account
* Authorization
* updated api calls
* apis, pointers, auth
* swagger
* stylecheck
* domain validation
* tests
* swagger
* error handling
* fix system account changes
* Cleanup database interface
* test cleanup
* fixed nil references
* feat: Add logout endpoint to auth routes
* feat: Add logoutHandler for stateless JWT token logout
* fixed some bug catched in tests
* auth/account patch
* prettier
* remove test logs
* fixed incorrect number of parameters
* fixed swagger docs
* enable swagger in dev environment
* errors.Wrap -> fmt.Errorf
* test: Add comprehensive test cases for accounts API handlers
* fix: Resolve test failures in accounts_test.go
* test: Add tests for duplicate username handling in account creation and update
* feat: Add username uniqueness checks for account creation and update
refactor: Improve username existence checks in SQLite account methods
* linted
* test: Add comprehensive tests for auth domain token and credential validation
* test: Add comprehensive test cases for auth domain token creation and validation
* test: Add comprehensive error handling test cases for accounts domain
* refactor: Remove `SaveAccountSettings` method from database implementations
* test: Add test cases for password update functionality
* test(e2e): auth login
* lint
* send regular context to domain
* fixed e2e auth tests
* test: Add auth_test.go for end-to-end authentication testing
* feat: Add comprehensive authentication tests using Playwright and testcontainers
* fix: Handle multiple return values in Playwright test methods
* error message
* e2e playwrigth tests
* ci: setup playwrigth
* refactor: Update Playwright tests to use locator-based API
* refactor: Remove unnecessary alias for playwright-go expect import
* refactor: Replace deprecated expect package with WaitFor() method in Playwright tests
* fix: Resolve linting issues in e2e Playwright tests
* remove npm ci from e2e ci
* make playwright available in path
* typo
* re enabled ci
* base e2e accounts test
* more account e2e
* feat: Add HTML test reporter with screenshots and detailed results
* feat: Embed screenshots as base64 in HTML test report
* refactor: Remove GitHub step summary functionality from test helper
* refactor: Make reporter global to share test results across test helpers
* refactor: Add HandleSuccess method to TestHelper for consistent test result reporting
* feat: Add descriptive messages to all test assertions in TestHelper
* test: Add descriptive messages to assertions in accounts_test.go
* test: Add descriptive error messages to assertions in accounts_test.go
* feat: Add descriptive messages to assertions in accounts_test.go
* refactor: Update assertion functions to receive *testing.T as first argument
* refactor: Update accounts_test.go assertions to pass *testing.T argument
* refactor: Update accounts_test.go assertions to use *testing.T argument
* refactor: Update `accounts_test.go` to use `*testing.T` argument in `Require()` calls
* refactor: Update `th.Require()` calls with `t *testing.T` argument in accounts_test.go
* assert helper
* refactor: Refactor `False` test helper to use `Assert` function consistently
* refactor: Refactor `Equal` test helper to use `Assert` function
* refactor: Simplify Error test helper to use Assert function
* refactor: Refactor `NoError` to use `Assert` function for consistent error handling
* typo
* refactor: Differentiate between test cases and assertions in reporter
* refactor: Simplify AddResult method signature and use error message for assertion
* refactor: Simplify test report with focused failure details and screenshots
* refactor: Ensure assertions are always called in PlaywrightRequire helper methods
* refactor: Update test error messages to be action-oriented
* refactor: Update error messages to be more action-oriented in accounts_test.go
* refactor: Update error messages to be action-oriented in accounts_test.go
* refactor: Improve error messages in auth_test.go for better test readability
* refactor: Improve screenshot handling and test result reporting in Playwright test helper
* fix: Improve test reporting with detailed error messages and logging
* refactor: Remove unused runningInCI field from TestHelper struct
* fix: Improve message formatting in Assert method for better reporting
* assertions
* test: Add `Require()` calls to 007 test for improved error handling
* refactor: Update test reporter to include error details and improve HTML rendering
* fix: Properly escape and render base64 screenshot in HTML report
* fix: Correct base64 screenshot rendering in test reporter
* fixed tests + html report
* feat: Add artifact upload for e2e test report
* make lint
* chore: use correct version in user agent
* ci: run e2e after other checks
* chore: remove pre-commit
* feat: Add manifest file
* fix: Embed webmanifest file
* fix: use standalone mode, not fullscreen
* feat: Open add dialog by default if share query params are present
* fix: Use relative url in manifest to allow subfolder
* fix: Remove missing icon
* fix: Repĺace current history entry if sharing
* chore: Make query params consistent
* feat: Add more pwa icons
* fix: js prettier
---------
Co-authored-by: Felipe Martin <812088+fmartingr@users.noreply.github.com>
Co-authored-by: Felipe M. <me@fmartingr.com>
* refactor: Improve SQLite performance with connection pooling and retry logic
* feat: Add withTx and withTxRetry methods to SQLiteDatabase for handling database locks
* refactor: add Init command to all databases
* refactor: Improve transaction handling with retry and error management
* refactor: Remove panic/recover pattern in transaction handling
* refactor: Replace `errors.WithStack` with `fmt.Errorf` in transaction methods
* docs: Add docstrings to `withTx` and `withTxRetry` methods in SQLite database implementation
* feat: use new withTxRetry in SaveBookmarks
* feat: sqlite inmmediate transactions by default
* refactor: Split SQLiteDatabase into separate writer and reader dbbase instances
* refactor: Update Init method to configure both reader and writer database connections
* feat: use writer/reader sqlite databases
* refactor: Replace all read calls to use the `reader` database instance
* refactor: Replace errors.WithStack with fmt.Errorf and add nil checks
refactor: Replace errors.WithStack with fmt.Errorf and add proper error handling
fix: Handle potential database connection errors with improved error wrapping
refactor: Replace errors.WithStack with fmt.Errorf and improve error handling
refactor: Replace error handling with fmt.Errorf and proper nil checks
refactor: Replace errors.WithStack with fmt.Errorf and add nil error checks
refactor: Replace errors.WithStack with fmt.Errorf and add nil checks in sqlite.go
refactor: Replace errors.WithStack with fmt.Errorf and add nil checks
refactor: Replace errors.WithStack with fmt.Errorf and improve error handling
refactor: Replace remaining errors.WithStack with fmt.Errorf in sqlite.go
* refactor: Use withTxRetry for SetDatabaseSchemaVersion method
* fix: Simplify error handling in GetBookmark and GetAccount methods
* refactor: Remove duplicated non-nil error checks in sqlite.go
fix: duplicated non-nil checks
* tests: use testutil instead of a manual in memory sqlite db
* fix: openbsd sqlite connection
* feat: Add nginx service to test shiori webroot configuration
chore: Update nginx configuration to resolve 502 gateway error
fix: Update SHIORI_WEBROOT to SHIORI_HTTP_ROOT_PATH in docker-compose
feat: Add debug log level flag to shiori service
refactor: Update docker-compose with simplified command and log configuration
fix: Change nginx port mapping from 80 to 8081
feat: Add volume for Go module cache in docker-compose
style: Add type attribute to script tags in index.html
feat: Update import statements to use RootPath variable in index.html
* docs: Update contribution guide with server and docker instructions
* docs: Add Docker and nginx documentation for local development
* test: IsValid()
Bumps the all group with 1 update: [actions/setup-go](https://github.com/actions/setup-go).
Updates `actions/setup-go` from 5.1.0 to 5.2.0
- [Release notes](https://github.com/actions/setup-go/releases)
- [Commits](41dfa10bad...3041bf56c9)
---
updated-dependencies:
- dependency-name: actions/setup-go
dependency-type: direct:production
update-type: version-update:semver-minor
dependency-group: all
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Felipe Martin <812088+fmartingr@users.noreply.github.com>
* fix: Validate session on login component mount to prevent unnecessary login form
* fix: Replace non-existent `api/v1/auth/check` with `api/v1/auth/me`
* feat: Prevent login form flickering by conditionally rendering only when needed
* feat: Show login component after user logout
* fix: make styles
* feat: Add login component JavaScript file
* feat: Create login component and refactor login view
* refactor: Convert login to single-page application with dynamic component rendering
* feat: Enhance session validation and login form display logic
* fix: Resolve Vue app mounting and method duplication issues
* fix: Prevent null reference error when focusing username input
* fix: Initialize `isLoggedIn` to true to show login form during async check
* refactor: Improve session validation and login flow logic
* fix: Adjust login component visibility and initial login state
* feat: Add login form template to login component
* feat: Update login template to match original login.html design
* fix: Resolve login view rendering and state management issues
* refactor: Remove login route from frontend routes
* refactor: Remove login-footer from login component template
* fix: Modify logout to show login form without redirecting
* refactor: Remove /login route test for SPA architecture
* refactor: delete login.html file
* style: Remove extra blank line in frontend_test.go
* chore: run make style changes
* refactor: Migrate documentation to MkDocs with material theme and improved structure
* refactor: docs images hierarchy
* refactor: Move screenshots to assets and update paths in Screenshots.md
* feat: Convert screenshots to MkDocs content tabs with light/dark theme switching
* feat: sync content tabs by label
* chore: add light theme with shiori red color
* docs: Update index page to match README with concise feature list
* docs: Remove Resources section from documentation index
* ci: added github workflows
* docs: Add section for building documentation in Contribute.md
* docs: add Mac LaunchAgent instructions
Instructions for Mac LaunchAgent so the Shiori server will start at
login automatically.
* docs: separate sections for macOS start up
macOS instruction have its own heading.
* docs: rename the heading for Linux start up