1.55.1 (2024-12-12)
- create a product if needed after a redis update event (#622) (66010fe)
- remove legacy log message (267568e)
1.55.0 (2024-12-12)
1.54.0 (2024-12-11)
- run and save price tag detections in
proof_predictions
table (#614) (62ecaab) - Shop import: new script to upload prices from a shop csv (#574) (7ec2eda)
- fix bug in directory selection for proof image (#616) (b32b5cf)
- use openfoodfacts.ml module for proof classification (#613) (8eb37e6)
1.53.0 (2024-12-06)
- API: allow adding prices on proofs not owned (only PRICE_TAG proofs) (#609) (071fad0)
- API: Allow anonymous users to upload proofs (#607) (0c68bf8)
- return proof predictions in
GET /api/v1/proof
route (#601) (42f1c5e)
- API: allow anyone to access proof data (#606) (1b4dcb5)
- API: only return proof.predictions in detail endpoint (#605) (81f7f0f)
- Update github-projects.yml (e4bfe68)
1.52.0 (2024-12-05)
- add command to run ML models on proofs without predictions (#599) (32de49b)
- Add unit test for proof type detection (#597) (0386cff)
- enable ML predictions on prod & staging (#596) (8d049aa)
- remove deprecated command for ssh-action (#598) (28afbe7)
1.51.0 (2024-12-03)
- Location: new brand & version fields (fetch & store from OSM) (#591) (63dc620)
- Location: script to fill in OSM brand & version (#592) (ea29002)
1.50.0 (2024-11-27)
- Admin: add Price view. improve Location & Proof views. (#580) (1a59b1e)
- GDPR: improve Leclerc merge and price upload. ref #213 (978a401)
1.49.0 (2024-11-21)
1.48.0 (2024-11-13)
- allow users to submit origin tags in their language (#561) (2b867db)
- proofs: New endpoint to extract price data from images (with Gemini) (#557) (fa54a36)
1.47.1 (2024-11-09)
1.47.0 (2024-11-08)
- allow users to submit category_tag with language prefix (#548) (9aab15d)
- API: on Location POST, return existing if duplicate (#554) (d1efae6)
- locations: new source field to store the app name & version (#546) (a9188c9)
- run OCR extraction on every new image (#543) (77ed50b)
- Sync: fetch OFF obsolete products (25k items) (#552) (badec8b)
- add CORS headers to images (#545) (bd3709a)
- proofs: run OCR in post_save signal instead of create (#549) (f3cfa79)
- remove perform_create to simplify code (2394940)
- update dependency openfoodfacts-python (#550) (2f53957)
- Update github-projects.yml (d8d54d7)
1.46.0 (2024-10-25)
- API: Allow updating Proof location fields (#539) (8554eaf)
- Proofs: on update, also update proof prices (#538) (d5481f2)
1.45.1 (2024-10-23)
- GDPR: Use unique location identifier instead of name (bd681f1)
- API: store app_version in Price & Proof source field (#533) (bbfce93)
- GDPR: Use new Price.receipt_quantity field. ref #499 (64fcd80)
1.45.0 (2024-10-19)
- Prices: Allow adding new prices with a location_id (#527) (99f16df)
- Prices: new field to allow users to input the quantity bought (#498) (857b813)
- Proofs: Allow adding new proofs with a location_id (#528) (38e5599)
- Proofs: new fields to allow users to input the number of prices & total sum (#497) (8a9aa50)
- Prices: init Price.receipt_quantity field in migration. ref #498 (1822b8d)
- Tests: Remove proof images on test tearDown (#529) (5805eea)
1.44.3 (2024-10-13)
- Product sync: Avoid setting None for missing fields. Use model default values instead (#519) (e3ed44e)
1.44.2 (2024-10-11)
1.44.1 (2024-10-09)
- Backups: fix backup location. closes #407 (97ed9b2)
- Queue: bump max_attempts to 2. ref #376 (e83158b)
- Stats: make sure to get all Product & Proof with prices when updating counts. ref #492 & #481 (6f446b9)
1.44.0 (2024-10-06)
- Locations: new type & website_url fields to start allowing ONLINE stores (#446) (ce50c74)
- Users: new /users/:user_id endpoint. Only for self (#500) (665c44f)
- Proofs: Methods to update missing proof fields from prices (#481) (ffe5e5a)
- Stats: simple script for top product stats (via API) (#398) (14c6d39)
1.43.1 (2024-10-03)
1.43.0 (2024-10-03)
- products: New Product.location_count field (#489) (85cd11f)
- products: New Product.proof_count field (#491) (f77ec80)
- products: New Product.user_count field (#490) (459c6fc)
- Proof: generate image thumbnail (size 400) on create (#486) (9f72de6)
- API: Proofs: improve API documentation for upload (#493) (0168a0f)
- locations: fix count calculation when FK is null. ref #420 (a075918)
- products: fix update count CRON setup. ref #492 (7e0588b)
- users: fix count calculation when FK is null. ref #419 (f2f6d9c)
- Documentation: Remove mention of /app. closes #482 (18f7083)
- products: New weekly CRON to update Product counts (#492) (dd9a239)
1.42.0 (2024-10-02)
1.41.0 (2024-09-28)
- API: new /stats endpoint for TotalStats (#476) (4f8384f)
- Stats: new TotalStats model (#475) (034025b)
- locations: add new count fields in API ordering settings. ref #419 (b02c480)
- stats: add to admin, cleanup (#479) (39866ac)
- stats: New daily CRON to update TotalStats (#478) (63f5a76)
1.40.0 (2024-09-27)
- locations: New Location.product_count field (#470) (cebc523)
- locations: New Location.proof_count field (#468) (004af12)
- locations: New Location.user_count field (#471) (be0c796)
1.39.3 (2024-09-24)
- Django: set 2h long task timeout & retry. ref #376 (87b6e21)
- Django: split OFF product sync into 4 flavors. ref #376 (4fab7b8)
1.39.2 (2024-09-23)
- Django: fix daily DB backup task (#461) (35cbb81)
- Django: tentative fix by removing task timeout. ref #376 (c03af3c)
- proofs: extra API filtering (on date year & month, on empty location_id) (99e88c0)
1.39.1 (2024-09-23)
1.39.0 (2024-09-22)
- prices: new querysets to calculate min, max & average (#452) (ab9ed15)
- prices: new stats endpoint (#454) (540feba)
- products: new properties to calculate price min, max & average (#453) (f662710)
- Autolabel some PRs (#436) (c6122be)
- generate price schema (#457) (4d66eee)
- users: New weekly CRON to update User counts (#458) (f7072b8)
- users: update is_moderator on login (#456) (67caa6f)
1.38.0 (2024-09-15)
- Django: fix babel currency list order (#447) (4da6da2)
- Django: fix daily import script (avoid unique_scans_n null). ref #376 (0656431)
- Django: fix daily import script (seperate bulk_create & bulk_update). ref #376 (294261f)
1.37.0 (2024-09-12)
- GDPR: improve script to manage Picard (#430) (955cecc)
- users: New User.location_count field (#440) (ba02e6b)
- users: New User.product_count field (#441) (c440ced)
- users: New User.proof_count field (#442) (2cb5fb1)
1.36.1 (2024-09-11)
- Django: Update contributing.md. ref #431 (c2bfb1d)
- Django: Updated project setup instruction (#432) (d5fa2b8)
- fix pre-commit. ref #425 (211beb2)
- proofs: simple update_location() method (#437) (d54ded6)
1.36.0 (2024-09-11)
- add model with_stats() queryset. Add tests (5aa00e7)
- stats: new model update_price_count() methods (#435) (b25146d)
- tests: skip Product & Location post_save signals (#434) (639cee6)
- Update github-projects.yml (8d82664)
1.35.1 (2024-09-06)
1.35.0 (2024-09-05)
- Create github-projects.yml (092f591)
- fix github-project.yml (4d9a1fd)
- Update github-projects.yml (04e9e10)
1.34.2 (2024-09-04)
1.34.1 (2024-09-04)
1.34.0 (2024-09-02)
- Django: extra API fixes round 2 (#401) (1bb28d8)
- Django: fix update price_counts on Price create/delete (#404) (9134f3c)
- Django: run Django tests instead of FastAPI (#402) (0628f62)
- Django: update CI test config. ref #402 (5edf691)
- add compose project name (6c83c4c)
- always launch quality checks (18c51f8)
- Django: Use select_related to avoid N+1 queries (#403) (7302a0e)
- fix CI (#406) (f862116)
- fix test CI (#411) (982c9d1)
- rename data-import folder to scripts (612c939)
- Sentry: add Sentry environment variable (net or org). ref #400 (554fc3f)
- try to remove image in dev.yml (b79b052)
- update build branch (682955c)
1.33.0 (2024-08-22)
- locations: add extra filter by osm_address_city (eb27b72)
1.32.1 (2024-08-20)
- fix permission issue (c6e566a)
1.32.0 (2024-08-20)
- add home_cache volume (#361) (3ec9632)
- Create label.yml (4e9d0be)
- Create labeler.yml (eae407a)
- fix unit test (#359) (7ca1d2f)
1.31.1 (2024-07-15)
1.31.0 (2024-07-05)
1.30.0 (2024-06-28)
- proofs: Use ProofCreate schema when possible. Move owner field to ProofFull (9f09534)
1.29.1 (2024-06-27)
- ci: add some missing conventional commit types in release-please config. ref #344 (9117657)
- ci: fixed branch name for release-please. ref #344 (056f61e)
- prices: reorganise schema inheritance to validate price updates (#342) (64aac06)
- proofs: reorganise schema inheritance (#343) (7e17a68)
- revert release-please config to v3 (#344) (739e128)
- update README with links (e985ab2)
1.29.0 (2024-06-24)
- proofs: New location fields (#338) (fe54229)
- proofs: New proof.currency field (#337) (b9d2c90)
- proofs: New proof.date field (#330) (1b41308)
- import dumps at 3PM instead of 10AM (#332) (543c54c)
- proofs: also return proof relationships when fetching detail. ref #338 (d323180)
- proofs: improve new proof date & currency optional mgmt. ref #327 & #337 (5a309b4)
1.28.0 (2024-06-04)
- prices: new source field to store the app name (#301) (9efd923)
- proofs: new source field to store the app name (#310) (30ab149)
1.27.0 (2024-05-21)
- location: store OSM address country_code (#296) (43485ed)
- location: store OSM tag key & value (#294) (3eeccbd)
1.26.0 (2024-05-02)
1.25.1 (2024-04-17)
1.25.0 (2024-04-03)
1.24.1 (2024-03-27)
1.24.0 (2024-03-18)
- new Product.ecoscore_grade field (#247) (fa89ef8)
- new Product.nova_group field (#251) (e611b11)
- prices: allow moderators to delete prices (#260) (0c3d232)
- prices: allow moderators to edit prices (#259) (dcb463b)
- product: new source_last_synced field (#256) (e6be855)
- products: fix filter by labels_tags (#252) (ac68218)
- products: update products added first in Open Prices (#250) (bef2932)
- sync: tentative fix of Product sync with OFF (#257) (68f0b6c)
- tests: use ProductFull for fixtures (#253) (2d7b83c)
- improve examples of Price schema (#248) (2527942)
- Improve typing, pre-commit, updates openfoodfacts package (#198) (ff03b0c)
1.23.0 (2024-03-05)
- add PATCH endpoint to update proof (#235) (6d05821)
- new Product.nutriscore_grade field (#239) (2724893)
- products: new filter by categories_tags (#234) (3676381)
- products: new filter by labels_tags (#238) (09fb20d)
- prices: improve private proof filtering depending on user (#241) (a3503b0)
- remove trailing slash in API endpoints (#233) (31a840d)
- tests: use LocationFull for fixtures (#240) (f04a53f)
- fix restart policy for nginx (#232) (e924d00)
- Simplify api.py (move endpoints to their own routers) (#226) (683600b)
1.22.0 (2024-02-24)
- add endpoint to update price (#202) (a4b66a6)
- allow filtering Prices by proof_id(#219) (a26d1b2)
- new GET proof by id endpoint (#228) (177a8d2)
- translate landing page in spanish (#230) (ef019fc)
1.21.0 (2024-02-21)
- add a route to get all user proofs (c4b6a7a)
- add advanced filtering on GET /prices (#29) (9b52406)
- add an endpoint to delete a session (#174) (a2955dc)
- add CORS configuration (#62) (79de31b)
- add endpoint to retrieve location by osm data (#108) (b317014)
- add endpoint to retrieve product by code (#106) (70f4567)
- add extra filters on GET /prices (#100) (27edae3)
- add filter on Proof.price_count field (#187) (0068cd5)
- add labels_tags field (ea2bdb0)
- add location filter on price_count (#142) (1237687)
- add location.price_count to keep track of number of prices (#140) (817663f)
- add openapi tags on endpoints (#88) (e7b0c14)
- add pagination on GET /prices (#28) (4e39b71)
- add price filters on category_tag, labels_tags & origins_tags (#113) (2a1e350)
- add price.origins_tags field (#110) (46e0c7f)
- add price.price_is_discounted field (#163) (a73e460)
- add price.price_per field (#127) (5740271)
- add price.price_without_discount field (#130) (5e3be73)
- add Price.product_name field (#83) (36d551f)
- add product filter on price_count (#134) (3f687d2)
- add product.price_count field to keep track of number of prices (#129) (73b32e6)
- add proof object in price response (#131) (450b82e)
- add proof support (19ee604)
- add proof.is_public field (#126) (20a4b16)
- add proof.price_count to keep track of number of prices (#185) (1637f36)
- add Proof.type field (#68) (d211c0a)
- add relationship objects in response of GET /prices (#92) (2156690)
- add sorting on GET /prices (#90) (7139ec9)
- add support for cookie authentication (9e8413d)
- add user sessions (#149) (a23977e), closes #148
- add user.price_count to keep track of number of prices (#143) (0f13566)
- add vue.js frontend on /app (ca38cbf)
- additional tests on Price create (#60) (bcbcc2a)
- allow to upload price of barcode-less products (#53) (d44d86d)
- ask for proof type when creating (#95) (529cdce)
- auth: avoid recreating existing user on login (#144) (502539c)
- authentication workflow and store user token (#22) (81bab91)
- fetch location data from OpenStreetMap Nominatim (#38) (2044e6b)
- fetch product data from OpenFoodFacts (#49) (cc5a778)
- GET /locations/id endpoint to get location details (#37) (4a4eca1)
- GET /products/id endpoint to get product details (#46) (74f011c)
- import product DB every day (#119) (b60c3ac)
- import script for GDPR requests csv (Auchan, Carrefour, E.Leclerc, Intermarché) (#209) (0c491e4)
- locations GET endpoint (#138) (300697f)
- manage webp proof uploads (#98) (830315b)
- new DELETE prices endpoint (#179) (35d9f6e)
- new DELETE proofs endpoint (#197) (6066982)
- new Product.brands field (#93) (fd359dc)
- new Product.brands_tags array field (#207) (ba5b917)
- new Product.categories_tags array field (#192) (e9d73ae)
- new Product.labels_tags array field (#208) (95aa5fb)
- new Product.product_quantity_unit field (#194) (aa353bf)
- new user.is_moderator field (#183) (450305b)
- on Price create, create (or get) Location, and link them (#36) (003de11)
- on Price create, create (or get) Product, and link them (#45) (71cf40a)
- paginate, filter & order proofs (#150) (ed53599)
- Price model (#23) (56a853b)
- price POST endpoint (#24) (0bf98ca)
- price: add filter on created field (689d4ab)
- prices GET endpoint (#26) (a769910)
- products GET endpoint (#122) (f80d80b)
- return Price.owner info (6e922f3)
- simple Location model (#35) (32562ad)
- simple Product model (#44) (2bfa8f6)
- simply Price.currency validation (#67) (d7dfb0c)
- User model (#21) (556cc6f)
- users GET endpoint (#147) (6fdb640)
- add --batch-size param to CLI command (dca9098)
- add /api/v1 prefix to all relevant routes (#74) (353e59f)
- add image serving (5808b7a)
- add index on products.price_count field (9fdfdcd)
- add missing filter on Product.product_id field. ref #134 (0ab9f9d)
- add prod env config (8ced9d1)
- add status endpoint (b3ddad9)
- always return proof.file_path for proof uploaded by the user (#132) (fe14346)
- better fetch location city from OSM. ref #38 (c37e7a6)
- bump release please version (a37e7da)
- CORS: revert configuration. add openfoodfacts-explorer to whitelist (e3e9098)
- CORS: temporarily allow all origins in deployed envs. ref #65 (06f2560)
- fix AttributeError in fetch_product_openfoodfacts_details (#161) (ffd9d65)
- fix container deploy config (36c4f1b)
- fix db error (#125) (57e4adb)
- fix duplicate key error due to duplicate products (bd6ff9c)
- fix email sign-in (#170) (69d65c0)
- fix github config (7edfa8d)
- fix labels_tags field validator (#69) (5f23977)
- fix landing page (cf9bb9d)
- fix locations GET filters. ref #138 (3d75e16)
- fix migration parent id. ref #183 (c62c52a)
- fix parsing bug in import_product_db (#164) (40f2c2a)
- fix product_quantity DB error (8196bc2)
- fix product.unique_scans_n server_default (54202d0)
- fix ProofCreate schema (ed34567)
- fix release please (#78) (86bb591)
- fix some typos in the landing page (#51) (e5fee84)
- fix tests following addition of Price.id field in schema. ref #179 (2818540)
- fix unique_scans_n null values (b967d5a)
- improve landing page (#71) (ec79ccc)
- improve price fetch performance (#118) (1b65ea2)
- lint last alembic version (1b0667d)
- lowercase the user_id (#215) (21444ff)
- normalize all tags values (9402bbb)
- Product.brands should be a string. ref #93 (7bbf1fc)
- return 201 instead of 200 on price (& proof) create (#66) (af543cf)
- stop using global db, use get_db instead (#30) (9739734)
- strip user_id (66a9c04)
- transform async func into func (22a5f0d)
- update docker-compose.yml to add postgres service (0b5c8af)
- update pre-commit config (5cc63f4)
- use black + isort on all files (877f3c6)
- use opsession instead of session as cookie name (#177) (dfd3e6a)
- use time.sleep instead of asyncio.sleep in non-corountine function (1ccffd6)
- add a link to the frontend repo (#111) (cd2f34b)
- add fr landing page (#155) (c163bfd)
- add gh_pages documentation (6f8bf6e)
- add github workflow to generate doc (afb8344)
- add migration files to docker image (895fe93)
- add poetry config instead of requirements.txt (8791d8a)
- add tutorial + improve main doc page (#116) (a01a5a0)
- add tutorial for multiple products (shop shelf) (#176) (ab33fc2)
- add typing information (cc5e383)
- allow deployment in prod (e174992)
- fix container deploy (87e245c)
- fix CORS config (d4e363a)
- fix deployment (0722ee3)
- fix deployment (7c5e460)
- improve landing page (#109) (ee2cbd8)
- improve setup documentation (#15) (fa662c4)
- main: release 1.0.0 (ef1c578)
- main: release 1.0.1 (0c306e3)
- main: release 1.0.2 (72d803b)
- main: release 1.0.3 (fb949a3)
- main: release 1.1.0 (#41) (954e0e7)
- main: release 1.10.0 (#139) (b36ab9f)
- main: release 1.11.0 (#141) (ea0f8e6)
- main: release 1.12.0 (#145) (e343113)
- main: release 1.13.0 (#151) (af856ea)
- main: release 1.13.1 (#159) (284a252)
- main: release 1.14.0 (#162) (1b8cd54)
- main: release 1.15.0 (#169) (3d006b5)
- main: release 1.16.0 (#175) (2f039fe)
- main: release 1.17.0 (#186) (cf82069)
- main: release 1.18.0 (#189) (8019beb)
- main: release 1.19.0 (#196) (55b1e2e)
- main: release 1.2.0 (#55) (3f61b06)
- main: release 1.2.1 (#75) (25fdec8)
- main: release 1.20.0 (#211) (5dd11b0)
- main: release 1.3.0 (#86) (8b98d0d)
- main: release 1.4.0 (#99) (4c355ce)
- main: release 1.4.1 (#101) (1c51e73)
- main: release 1.4.2 (#102) (3ed09e2)
- main: release 1.5.0 (#105) (4bfc6b9)
- main: release 1.6.0 (#112) (7f006ab)
- main: release 1.6.1 (#117) (970ff2c)
- main: release 1.7.0 (#120) (27b7f0f)
- main: release 1.8.0 (#128) (e3acac0)
- main: release 1.9.0 (#133) (8c32836)
- main: release 1.9.1 (#136) (415336c)
- make migration files available in dev (494bb96)
- migrate before deployment (#52) (bb91bfc)
- rename schemas to clarify (#146) (e0e3896)
- replace venv with poetry (#54) (249c092)
- tutorial: fix OpenStreetMap name (#168) (180c6e6)
- update tutorial to add a price (#157) (0ebbbe0)
- Welcome users (#173) (d59d1da)
1.20.0 (2024-02-21)
- new Product.brands_tags array field (#207) (ba5b917)
- new Product.categories_tags array field (#192) (e9d73ae)
- new Product.labels_tags array field (#208) (95aa5fb)
- normalize all tags values (9402bbb)
1.19.0 (2024-02-08)
- new DELETE proofs endpoint (#197) (6066982)
- new Product.product_quantity_unit field (#194) (aa353bf)
1.18.0 (2024-02-06)
1.17.0 (2024-02-04)
- add filter on Proof.price_count field (#187) (0068cd5)
- add proof.price_count to keep track of number of prices (#185) (1637f36)
1.16.0 (2024-01-31)
1.15.0 (2024-01-26)
- price: add filter on created field (689d4ab)
1.14.0 (2024-01-25)
- fix AttributeError in fetch_product_openfoodfacts_details (#161) (ffd9d65)
- fix parsing bug in import_product_db (#164) (40f2c2a)
1.13.1 (2024-01-24)
1.13.0 (2024-01-19)
1.12.0 (2024-01-14)
- add user.price_count to keep track of number of prices (#143) (0f13566)
- auth: avoid recreating existing user on login (#144) (502539c)
- users GET endpoint (#147) (6fdb640)
1.11.0 (2024-01-14)
- add location filter on price_count (#142) (1237687)
- add location.price_count to keep track of number of prices (#140) (817663f)
1.10.0 (2024-01-13)
1.9.1 (2024-01-12)
1.9.0 (2024-01-11)
1.8.0 (2024-01-11)
- add price.price_per field (#127) (5740271)
- add price.price_without_discount field (#130) (5e3be73)
- add product.price_count field to keep track of number of prices (#129) (73b32e6)
- add proof object in price response (#131) (450b82e)
- add index on products.price_count field (9fdfdcd)
- add typing information (cc5e383)
1.7.0 (2024-01-10)
- add proof.is_public field (#126) (20a4b16)
- import product DB every day (#119) (b60c3ac)
- products GET endpoint (#122) (f80d80b)
- add --batch-size param to CLI command (dca9098)
- fix db error (#125) (57e4adb)
- fix duplicate key error due to duplicate products (bd6ff9c)
- fix product_quantity DB error (8196bc2)
- fix product.unique_scans_n server_default (54202d0)
- fix unique_scans_n null values (b967d5a)
1.6.1 (2024-01-03)
1.6.0 (2023-12-31)
1.5.0 (2023-12-29)
- add endpoint to retrieve location by osm data (#108) (b317014)
- add endpoint to retrieve product by code (#106) (70f4567)
- add price.origins_tags field (#110) (46e0c7f)
- return Price.owner info (6e922f3)
1.4.2 (2023-12-23)
1.4.1 (2023-12-23)
1.4.0 (2023-12-23)
- add extra filters on GET /prices (#100) (27edae3)
- ask for proof type when creating (#95) (529cdce)
- manage webp proof uploads (#98) (830315b)
- new Product.brands field (#93) (fd359dc)
1.3.0 (2023-12-18)
- add openapi tags on endpoints (#88) (e7b0c14)
- add Price.product_name field (#83) (36d551f)
- add relationship objects in response of GET /prices (#92) (2156690)
- add sorting on GET /prices (#90) (7139ec9)
- add vue.js frontend on /app (ca38cbf)
- fix ProofCreate schema (ed34567)
- make migration files available in dev (494bb96)
1.2.1 (2023-12-04)
- add /api/v1 prefix to all relevant routes (#74) (353e59f)
- bump release please version (a37e7da)
- fix github config (7edfa8d)
- fix release please (#78) (86bb591)
1.2.0 (2023-11-27)
- add CORS configuration (#62) (79de31b)
- add labels_tags field (ea2bdb0)
- add Proof.type field (#68) (d211c0a)
- add support for cookie authentication (9e8413d)
- additional tests on Price create (#60) (bcbcc2a)
- allow to upload price of barcode-less products (#53) (d44d86d)
- simply Price.currency validation (#67) (d7dfb0c)
- add image serving (5808b7a)
- CORS: revert configuration. add openfoodfacts-explorer to whitelist (e3e9098)
- CORS: temporarily allow all origins in deployed envs. ref #65 (06f2560)
- fix labels_tags field validator (#69) (5f23977)
- improve landing page (#71) (ec79ccc)
- lint last alembic version (1b0667d)
- return 201 instead of 200 on price (& proof) create (#66) (af543cf)
- use time.sleep instead of asyncio.sleep in non-corountine function (1ccffd6)
1.1.0 (2023-11-22)
- fetch location data from OpenStreetMap Nominatim (#38) (2044e6b)
- fetch product data from OpenFoodFacts (#49) (cc5a778)
- GET /locations/id endpoint to get location details (#37) (4a4eca1)
- GET /products/id endpoint to get product details (#46) (74f011c)
- on Price create, create (or get) Location, and link them (#36) (003de11)
- on Price create, create (or get) Product, and link them (#45) (71cf40a)
- simple Location model (#35) (32562ad)
- simple Product model (#44) (2bfa8f6)
1.0.3 (2023-11-20)
- fix container deploy config (36c4f1b)
1.0.2 (2023-11-16)
- add prod env config (8ced9d1)
1.0.1 (2023-11-16)
- transform async func into func (22a5f0d)
- add a route to get all user proofs (c4b6a7a)
- add advanced filtering on GET /prices (#29) (9b52406)
- add pagination on GET /prices (#28) (4e39b71)
- add proof support (19ee604)
- authentication workflow and store user token (#22) (81bab91)
- Price model (#23) (56a853b)
- price POST endpoint (#24) (0bf98ca)
- prices GET endpoint (#26) (a769910)
- User model (#21) (556cc6f)