* Correct grammar and typo
* Correct grammar
* Fix some words
* Correct formatting
* Correct grammar on v1 migration page
* Correct grammar, punctuation, and typos in faq
* Fix grammar in installation-checklist
* One last correction
* 'hide' default email and password env variables
* first login API endpoint
* run code-generators
* frontend indicators for default username and pw
* remove old env variables from docs
* fix env set variable
* remove password from tests
* remove stale deployment docs
* remove from nav
* update tags
* update info on tags
* add note about dockerhub
* update features + formatting
* update PR template
* new maintainer docs
* change upgrade guide tag
* re-generate api docs
`email.com` is not a reserved domain, incorrect configuration could result in unintentional effects.
`example.com` is reserved by IANA for bogus purposes, see RFC 6761.
* WIP: proof of concept
* basic meta tag injection
* add support for scraping public/private links
* make tests go brrrrr
* cleanup initialization
* rewrite build config
* remove recipe meta on frontend
* make type checker happy
* remove other deployment methods
* fix issue with JSON response on un-authenticated request
* docs updates
* update tivy scanner
* fix linter stuff
* change registry tag
* build fixes
* fix same mistake I always make
* Dev docs: tests, postgres/psycog2
* Update pull request process.
* Add Food/Unit parsing instructions to the FAQ
* Update docker composes: mealie-data now local to docker-compose rather than hidden in docker volume dir! postgres points to 1.0.0b5
* sqlite docker-compose: mealie-data now local rather than hidden in docker volumes
* Merge Intro FAQ into main FAQ
* Progress on docs
* Add Advanced and v1b5 to docs index
* v1b5 changelog consistency with other changelogs
* Features: fix wrong link, name buttons for clarity
* Migration: link to github releases
* Updating: link to migration page, format docker cmds
* FAQ: update smart ingredient formatting
* Intro: fix typos
* API: update for newbie clarity
* Roadmap: update feature request & progress mechanism
* iOS shortcut: fix broken image links
* installation: add SMTP google app passwords
* Postgres: add header note on why.
* Update Groups doc per Discord discussion
* mealie-data back into docker default volume path
* add option to enable starttls for ldap
* add integration test for ldap service
* document new, optional environment variable
* fix: support anonymous bind
* id and mail attributes in LDAP_USER_FILTER should be implied
* remove print statement
* adds authentication method for users
* fix db migration with postgres
* tests for auth method
* update migration ids
* hide auth method on user creation form
* (docs): Added documentation for the new authentication method
* update migration
* add to auto-form instead of having hidden fields
* Corrected if statement to check if a results was returned by the LDAP search. And decoded the user_attributes from binary data to string
* removed trailing spaces
* Revert asserts in LDAP unit test back
Since an empty tuple is still a result, an user is created and the result should not be false.
* Simplified code
* Extended the LDAP implementation
* fix ldap authentication and user creation
* modified docs to include new LDAP environment variables
* update tests and linting
* add libldap-2.4-2 as runtime dependency for the api
---------
Co-authored-by: Erik Landkroon <eriklandkroon@gmail.com>
* Fix example postgres docker-compose setup in docs
Add a local volume to postgres container so changes get persisted between restarts
* Fix linked volume in postgres doc
* health check as python script
* install crfpp model via python
* drop curl from finale container
* use uvicorn by default w/ gunicorn as opt in
* recommend setting mem limit for container
* docs: fix typos
* typos: fix typos found by `codespell` across the codebase
* docs: fix `macOS` spelling
* docs: fix `authentification` terminology
"Authentification" is not a thing.
* docs: fix `localhost` typo in example link
* typos: fix in-code typos
These are potentially higher risk, but no other mentions of these typos
show up in the codebase.
* Use Base DN for LDAP and fetch user attrs
Requires that a Base DN be set for LDAP
Set `full_name` and `email` based on LDAP attributes when creating user
* Add support for secure LDAP
Allow insecure LDAP connection (disabled by default)
Use CA when connecting to secure LDAP server
* Added missing quotes to example
* Update security.py
* Update security.py formatting
* Update security.py
Switched to f-String formatting
* formatting
* Update test_security.py
Added at attributes for testing
* Update test_security.py
Modified tests for base DN
* Update test_security.py
Set proper base DN for testing
* Update test_security.py
Corrected testing for LDAP
* Update test_security.py
Defined base_dn
* Authenticated user not in base DN
Add check for when user can authenticate but is not in base DN
* Update test_security.py
LDAP user cannot exist as it is searched before it is created and the list returns False
Co-authored-by: Hayden <64056131+hay-kot@users.noreply.github.com>
* add data-types required for login security
* implement user lockout checking at login
* cleanup legacy patterns
* expose passwords in test_user
* test user lockout after bad attempts
* test user service
* bump alembic version
* save increment to database
* add locked_at to datetime transformer on import
* do proper test cleanup
* implement scheduled task
* spelling
* document env variables
* implement context manager for session
* use context manager
* implement reset script
* cleanup generator
* run generator
* implement API endpoint for resetting locked users
* add button to reset all locked users
* add info when account is locked
* use ignore instead of expect-error
* Changes Settings to use new SMTP_AUTH_STRATEGY variable in place of SMTP_TLS with transition support
#1187
* Wires up default email client to use ssl or tls authentication if enabled in settings
* Updates the docs
* Update template file
* remove SMTP_TLS and use staticmethod for validate
* consolidate test cases with params
Co-authored-by: Hayden <64056131+hay-kot@users.noreply.github.com>
* feat: add api endpoints for volume check
* feat: add docker icon
* add size prop
* feat: add frontend UI for checking docker-volume
* update caddy to server validation file
* add more extensive documentation around setup req
* fix: wrong type on user id #1123
* spelling
* refactor: cleanup excessive function calls
* fix disable button
* add backend env for restricting registration
* update state management
* add allow_signup to app info
* move allow_signup to backend only
* cleanup docker-compose
* potential darkmode fix
* fix missing variable
* add banner on login page
* use random bools for tests
* fix initial state bug
* fix state reset
* update to GUIDs
* fix cookbook id relationships
* update webhook keys
* cleanup naming and attribute orders
* remove old database tables
* fix meal-plan images
* remove dashbaord and events api
* use recipe-id instead of id
* cleanup documentation assets
* cleanup docs for v1 beta-release
* add depends_on for docker-compose
* use docker volumes for examples
* move caddy to frontend container
* docs: 📝 general documentation + add FAQ page
* fix(frontend): 🐛 readd missing upload button to backups.
* feat(backend): ✨ add support for backup sizes to be displayed on frontend
* feat(backend): ✨ add backend for administrator CRUD of users
* add admin support for user
* refactor(frontend): ♻️ rewrite admin CRUD interface for admins
* fix build errors
Co-authored-by: hay-kot <hay-kot@pm.me>