202 Commits

Author SHA1 Message Date
TomArm
a75116bc62
docs: updated home assistant docs (#2459)
Co-authored-by: tomarm <a@a.com>
2023-07-23 09:54:49 -08:00
Jacob Corn
9557b3f0b6
fix: log accurate IP (#2416)
* update dev docker poetry install

* Forward/Report IP through front and backend.

* Add fail2ban docs

* fix option name and iproute2 in omni entry

* Fix entry scripts -> gunicorn setting respected

* gunicorn off

* xfwd in nuxt proxy and handle multiple IPs
2023-06-25 10:22:21 -08:00
Carter
5e904d19b4
docs: re-add and fix the bookmarklet instructions to docs (#2419) 2023-06-20 22:09:20 -08:00
Jacob Corn
7e0d29afc7
feat: search tokenization, handling of quoted literal search, and postgres fuzziness (#2351)
* Creating postgres migration script and starting to set up to detect database

* non-working placeholders for postgres pg_tgrm

* First draft of some indexes

* non-working commit of postgres indexing

* Further non-working edits to db-centric fuzzy search

* update alembic for extensions

* More non-working setup

* Move db type check to init_db

* fix typo in db name check

* Add sqlite token search and postgres full text search

* reorder search to hit exact matches faster

* Add settings and docs for POSTGRES_LANGUAGE (full text search)

* Use user-specified POSTGRES_LANGUAGE in search

* fix fuzzy search typo

* Remove full text search and instead order by trigram match

* cleaner adding of indices, remove fulltext

* Cleanup old import of getting app settings

* Fix typo in index

* Fix some alembic fuzzy typos

* Remove diagnostic printing from alembic migration

* Fix mixed up commutator for trigram operator and relax criteria

* forgot to remove query debug

* sort only on name

* token and fuzzy search tests

* Refactor recipe search test to avoid rare random string cross-matches.

* Add ability to quote parts of search for exact match

* Remove internal punctuation, unless it's quoted for literal search

* Add tests for special character removal and literal search

* Remove the outer double quotes from searches, but leave internal single quotes alone.

* Update tests to avoid intra-test name collisions

* Fixing leftovers highlighted by lint

* cleanup linting and mypy errors

* Fix test cross-matching on dirty db (leftovers from bulk import)

* forgot to cleanup something when debugging mypy errors

* re-order pg_trgm loading in postgres

* address comments
2023-05-28 09:46:53 -08:00
Jacob Corn
27ebb4c462
docs: update dev docs, fix broken links, improve clarity of key points (#2354)
* 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
2023-05-13 10:50:22 -08:00
Michael Genson
fe17922bb8
Feature: Global Timeline (#2265)
* extended query filter to accept nested tables

* decoupled timeline api from recipe slug

* modified frontend to use simplified events api

* fixed nested loop index ghosting

* updated existing tests

* gave mypy a snack

* added tests for nested queries

* fixed "last made" render error

* decoupled recipe timeline from dialog

* removed unused props

* tweaked recipe get_all to accept ids

* created group global timeline
added new timeline page to sidebar
reformatted the recipe timeline
added vertical option to recipe card mobile

* extracted timeline item into its own component

* fixed apploader centering

* added paginated scrolling to recipe timeline

* added sort direction config
fixed infinite scroll on dialog
fixed hasMore var not resetting during instantiation

* added sort direction to user preferences

* updated API docs with new query filter feature

* better error tracing

* fix for recipe not found response

* simplified recipe crud route for slug/id
added test for fetching by slug/id

* made query filter UUID validation clearer

* moved timeline menu option below shopping lists

---------

Co-authored-by: Hayden <64056131+hay-kot@users.noreply.github.com>
2023-04-25 09:46:00 -08:00
rastacalavera
13aa57a3d2
updated iOS shortcut (#2317)
* Update ios.md

updated for version 1.X

* Update ios.md

fixing spaces

* Add files via upload

adding screenshots

* Update ios.md

fixed screen shot path and shrunk images down

* Add files via upload

added smaller screen shots
2023-04-03 10:04:51 -08:00
rastacalavera
721a1cdeae
Update community guide (#2309)
* Update ios.md

updated for version 1.X

* Update ios.md

fixing spaces

* Add files via upload

adding screenshots
2023-04-01 17:42:49 -08:00
Carter
7d9be67432
feat: LDAP Improvements and E2E testing (#2199)
* 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
2023-03-12 12:36:32 -08:00
Carter
2e6ad5da8e
Feature: Add "Authentication Method" to allow existing users to sign in with LDAP (#2143)
* 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
2023-02-26 10:12:16 -09:00
Erwan Colin
94abd04d38
docs: postgres volume target is /var/lib/postgresql/data (#2121) 2023-02-12 11:16:11 -09:00
Carter
da60e56982
fix: user login and creation with LDAP (#2107)
* 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>
2023-02-11 10:16:33 -09:00
Hayden
9ddb27b2e3
Promote i18n Ally for frontend localization (#2072)
Co-authored-by: sephrat <34862846+sephrat@users.noreply.github.com>
2023-01-28 16:41:01 -09:00
Benjamin Schmid
91f0a92838
doc(single-container): add hint on the exposed ports (#2029) 2023-01-28 15:46:27 -09:00
William Edmisten
7fdab33368
docs: Update references to license as AGPL not MIT (#2006) 2023-01-08 08:04:27 -09:00
Sören
5e97c32e68
Fix example postgres docker-compose setup in docs (#1998)
* 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
2023-01-07 18:21:42 -09:00
Hayden
e281f53488
chore: refactor-docker-structure (#1948)
* move dockerfiles to dedicated folder

* consolidate docker related files to docker dir

* update CI references

* experimental omni style container

* update makefile commands

* update references

* fix whitespace

* single container docs

* update build paths

* adds omni style build

* set context
2022-12-31 09:01:15 -09:00
Philipp
33dffccaa5
feat: duplicate recipes (#1750)
* feature/frontend: Add duplicate button to recipe

* feature/backend: Add recipe duplication endpoint

* feature/frontend: add duplication API call

* Regenerate API docs

* Fix linter errors

* Fix backend linter error

* Move recipe duplication logic to recipe service

* Add test for recipe duplication

* Improve recipe ingredients copy test

* generate types

* import type

Co-authored-by: Hayden <64056131+hay-kot@users.noreply.github.com>
2022-11-30 20:57:26 -09:00
Hayden
4b7a1af10b
docs: add diagram and notes on sharing recipes (#1865) 2022-11-27 11:29:36 -09:00
Hayden
3ad3d92e5f
feat: allow password change via container CLI (#1863)
* add password change script

* rename file

* add note in FAQ
2022-11-27 10:35:21 -09:00
Hayden
01aac0ca5d
docs: account-unlock (#1862)
* fix #1854

* generate spec

* add note about unlock script to FAQ
2022-11-27 10:17:43 -09:00
Felix
cb36258c0f
Update example docker compose to beta5 (#1815) 2022-11-12 08:23:01 -09:00
Hayden
3f5aab6fae
chore: bump version + change-log notice (#1766) 2022-10-24 18:13:27 -08:00
Hayden
83a076bd8b
feat: improve idle memory usage (#1758)
* 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
2022-10-22 20:00:13 -08:00
Hayden
d53e78317d
fix: advanced search now saved in URL (#1745)
* use query param for toggle state

* close #1678
2022-10-21 17:34:13 -08:00
Michael Genson
8271c3001e
feat: add support for API extras on shopping lists, shopping list items, and food data (#1619)
* added api extras to other tables
genericized api extras model from recipes
added extras column to ingredient foods
added extras column to shopping lists
added extras column to shopping list items

* updated alembic version test

* made mypy happy

* added TODO on test that does nothing

* added extras tests for lists, items, and foods

* added docs for new extras

* modified alembic versions to eliminate branching
2022-09-27 18:53:22 -08:00
Ben Boeckel
2e6b877ba9
docs: fix typos (#1665)
* 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.
2022-09-25 15:17:27 -08:00
Elegant
11eeab1b51
feat: LDAP improvements (#1487)
* 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>
2022-09-15 19:33:36 -08:00
Hayden
b56b987f5a
chore: fix demo links (#1639)
* remove matrix builds

* replace beta.mealie.io w/ demo.mealie.io
2022-09-12 13:07:51 -08:00
gurudc
25c40b8abf
docs: type in introduction.md (#1636)
Typo
2022-09-10 09:28:24 -08:00
Michael Genson
fd4776842e
docs: fixed incorrectly-labeled env vars (#1604) 2022-08-26 18:48:10 -08:00
Hayden
007b861ad6
docs: add docs on restoring to PSQL server (#1584)
* docs: add docs on restoring to PSQL server

* prevent iframe in netlify site
2022-08-20 11:53:48 -08:00
Hayden
b3c41a4bd0
security: implement user lockout (#1552)
* 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
2022-08-13 13:18:12 -08:00
Hayden
13850cda1f
security: multiple reported CVE fixes (#1515)
* update out of date license

* update typing / refactor

* fix arbitrarty path injection

* use markdown sanatizer to prevent XSS CWE-79

* fix CWE-918 SSRF by validating url and mime type

* add security docs

* update recipe-scrapers

* resolve DOS from arbitrary url

* update changelog

* bump version

* add ref to #1506

* add #1511 to changelog

* use requests decoder

* actually fix encoding issue
2022-07-31 13:10:20 -08:00
Michael Genson
703ee32653
docs: pagination and filtering, and fixed a few broken links (#1488)
* fixed broken links

* added docs for pagination and filtering

* small revision to pagination response example
2022-07-26 17:45:34 -08:00
Jim Eagle
3f808f8f00
docs: add go bulk import example (#1388)
* Fix link
* Add go bulk import
2022-06-15 11:50:19 -08:00
Hayden
56eb0bca71
release: prep beta 3 (#1349)
* docs: add tag documentation

* bump docker-compose tags

* minor language changes

* beta3 changelog

* auto-gen API docs

* bump version

* bump recipe-scrapers
2022-06-07 11:19:24 -08:00
Benjamin Pabst
37a673b34d
Update postgres to use most recent version (#1347) 2022-06-05 10:56:01 -08:00
Benjamin Pabst
3e7b8d4b71
Update to use most recent version (#1346) 2022-06-05 10:55:33 -08:00
Philipp Fischbeck
e898c80f59
fix: update issue links in v1.0.0beta-2 changelog (#1312) 2022-05-29 08:51:11 -08:00
James Addison
27c5cfc56b
Fixup: render homepage social media link images at 32x32 size (#1310) 2022-05-29 08:50:44 -08:00
Hayden
b981cf62bf
chore: bump version (#1307)
* bump version

* add release notes
2022-05-28 17:13:36 -08:00
Drumstickx
1534f0df77
docs: docker-compose.dev.yml is currently not functional (#1300) 2022-05-27 16:17:47 -08:00
Drumstickx
d751e3b35b
docs: add references for VSCode dev containers (#1299) 2022-05-27 16:17:39 -08:00
Hayden
010aafa69b
feat: add reports to bulk recipe import (url) (#1294)
* remove unused docker and caddy configs

* add experimental nested configs

* switch to nest under docker-compose

* remove v-card

* bulk parser backend re-implementation

* refactor UI for bulk importer

* remove migration specific report text
2022-05-25 19:33:58 -08:00
Philipp Fischbeck
8f7c7c39bb
refactor: split up recipe create page (#1283)
* refactor: split up recipe create page

* add flat card

Co-authored-by: Hayden <64056131+hay-kot@users.noreply.github.com>
2022-05-25 09:08:32 -08:00
Hayden
3ddbc033b2
chore: github stalebot changes (#1271)
* add exempt labels

* update tags for docker-compose
2022-05-24 08:30:07 -08:00
Hayden
66a8d1860b
Docs/update release notes (#1254)
* remove vetur config

* auto generate docs

* add latest changes

* cleanup feature pages
2022-05-23 21:30:58 -08:00
Philipp Fischbeck
479900e912
Consolidate frontend types (#1245) 2022-05-21 11:22:02 -08:00
Nick Kringle
6a88a59981
feat: extend email support for SSL/No Auth Email Support (#1235)
* 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>
2022-05-21 11:15:14 -08:00