Skip to content

Releases: mauprogramador/ifms-dev-competition

v0.5.6

Choose a tag to compare

@mauprogramador mauprogramador released this 18 Sep 00:44

🔖 Release v0.5.6 (2025-09-17)

See the ⟲ changelog to see all the commits.

See the ⇅ comparison history with the previous tag.


🔥 Main Changes

  • Update Python3 version to Python3.12
  • Exchange Selenium and WebDriver for Playwright
  • Update Dockerfile and Makefile
  • Add Verification GitHub Workflow
  • Run with uvloop
  • Cache and use the same playwright.Page
  • Run HTTP file server process to load static pages for Playwright

🔨 Builds

  • Add playwright asyncio pytest plugin and set loop to session. #b402bfc
  • Exchange selenium and webdriver for playwright. #9b73dd1

✨ Features

  • Exchange selenium and webdriver for playwright. #d3e9107
  • Serve images and web dirs static files. #ed869a6
  • Run with uvloop. #0eb82b3
  • Add exception logs on handler. #063a9dd

🔧 Fixes

  • Pre create required static dirs. #5f87de6
  • Check for error key in error context. #9192e00

♻️ Refactors

🧪 Tests

  • Run file server process to load pages for playwright. #f717590
  • Update tests. #5e0f752
  • Load css style on playwright. #da8a224
  • Use async client and add uvloop and session fixtures. #97eb437

📝 Chores

📌 Others

v0.5.5

Choose a tag to compare

@mauprogramador mauprogramador released this 08 Feb 02:36

🔖 Release v0.5.5 (2025-02-07)

See the comparison ⟲ history with the previous tag.

🔥 Main Changes

  • Separate routes and use cases in their modules.
  • Add reports use cases and list dynamics from the database.
  • Make save answer-key and compare similarity methods to OO classes.
  • Use custom HTTP error to provide error details.
  • Use Pathlib instead of OS for paths.
  • Implement tests.
  • Receive answer-key as HTML and CSS, take a screenshot, and save it.

🔨 Builds

  • Set asyncio loop scope.
  • Removes pillow.
  • Remove mock and add order for pytest.
  • Remove coverage and add httpx.
  • Add tests dependencies.

✨ Features

  • Update params info and validate when image is not sent.
  • Prevent json serialization error on errors.
  • Update validation error handlers and add filters.
  • Update tags and download route tag.
  • Update upload answer-key to form model.
  • Update save answer-key method to oo class.
  • Update compare to oo class.
  • Remove set operation to all map.
  • List dynamics from database.
  • Make database class attr protected.
  • Set content disposition param.
  • Update path use.
  • Change status code response to created.
  • Add reports use cases.
  • Return dynamic on data.
  • Set back max bytes.
  • Add set database method and repository inheritance.
  • Turn format error details in a method.
  • Use pathlib instead of os.
  • Move types to its own file removing them from params.
  • Check for lock requests directly in use case.
  • Move window config.
  • Update request method color in logs.
  • Load separeted routers in main.
  • Remove moved code.
  • Move reports routes and cases.
  • Move compare similarity case.
  • Move files and download routes and cases.
  • Move code dirs routes and cases.
  • Move dynamics routes and cases.
  • Move admin routes and cases.
  • Set default routes prefix.
  • Create routes and use cases dirs.
  • Use custom http error to provide error details.

🧪 Tests

  • Change to check for the test database.
  • Add save answer-key tests.
  • Update mocks and order.
  • Update order.
  • Mock database backup file copy.
  • Set database attr directly.
  • Add all tests.
  • Add test default answer-key image.
  • Add test config and mocks.
  • Remove unnecessary folders.
  • Add tests base initial.

📝 Chores

  • Remove clean make command.

v0.5.4

Choose a tag to compare

@mauprogramador mauprogramador released this 26 Jan 04:53

🔖 Release v0.5.4 (2025-01-26)

Main Changes:

  • Clean in separate routes;
  • Delete a dynamic reports records;
  • Clean all files of a dynamic and make them empty;
  • Save diff and screenshot images in a code sub dir;
  • Delete print and diff when cleaning the files;
  • Delete dynamic images dir (including answer-key) when removing a dynamic;
  • Add and use enum status on lock requests route;
  • Compare only when a CSS file is submitted;
  • In the diff image, make white where it is equal, and red where it is different.

✨ Features

  • Use the position method.
  • Use custom HTTP error and remove nested blocks.
  • Change SQLite error and use custom HTTP error.
  • Add custom HTTP error handler.
  • Add custom detailed HTTP error exception.
  • Sort imports and generate a correct diff image.
  • Check answer-ke file media type.
  • Expose repository and add dynamic method if got errors.
  • Set the answer-key file media type for image.
  • Update adds code dir to raise an error when already exists.
  • Remove the web file enum and merge it to the filetype enum.
  • Add more debug logs.
  • Compare only when a CSS file is submitted.
  • Add and use enum lock status as lock requests param.
  • Add divided cleaning methods and update dynamic images dir management.
  • Update remove dynamic log messages.
  • Add clean reports of a dynamic method.
  • Add screenshot filename constant.
  • Remove clean all and divide it to soft cleaning of reports and files.
  • Remove unnecessary log errors.
  • Refrain from delete all records to delete only from a dynamic.
  • Remove clean tables method.
  • Remove docstrings.
  • Correct backup file name.
  • Remove exchange operation.

🔧 Fixes

  • Invalid format order since merging of type columns.

📝 Chores

  • Update version to 0.5.4.

🎨 Styles

  • Sort imports.

v0.5.3

Choose a tag to compare

@mauprogramador mauprogramador released this 25 Jan 06:02

🔖 Release v0.5.3 (2025-01-25)

Main Changes:

  • Remove /exchange route;
  • Merge type_in and type_out columns to file_type;
  • Save a dynamic lock request status in the database;
  • Save each dynamic answer-key image dimensions in the database;
  • Compare images in RGB using Absolute Error (AE);
  • If comparison failed, set NULL as default for similarity and don't stop uploading file;

🔨 Builds

  • Update requirements.
  • Add opencv2 and remove scikit-image.

✨ Features

  • Test and update weight type and sql query.
  • Update log color.
  • Set weight inside and correct similar percent.
  • Weight using repository and make resize instead of error.
  • Sets weight by dynamic and ensures upload if comparison failed.
  • Add new libs imports.
  • Update logs and set multiprocessing pool.
  • Change repository to package.
  • Update verify lock and add lock query.
  • Merge lock routes and update repositories.
  • Merge lock methods, update compare and change use of state to repository.
  • Add 422 response and remove states.
  • Update config and lifespan.
  • Reduce type_in and type_out columns to file_type.
  • Remove exchange and rename params.

🔧 Fixes

  • Create dirs before run the app.
  • Check if web dir exists.
  • Inexistent web dir.

📝 Chores

  • Update version to 0.5.3.

v0.5.2

Choose a tag to compare

@mauprogramador mauprogramador released this 24 Jan 03:41

🔖 Release v0.5.2 (2025-01-23)

🔨 Builds

  • Update requirements.

✨ Features

  • Remove security, add lock, unlock and clean methods, and save answer-key to dynamic.
  • Remove security, add clean all route, and revert routes.
  • Add clean table method, set database from env and save score as int.
  • Remove security and update lock mechanism.
  • Remove security and set default lock.
  • Load database file env.
  • Add lock requests state and mount images dir.

📝 Chores

  • Update version to 0.5.2.
  • Add database file env.
  • Execute clean silently.

v0.5.0

Choose a tag to compare

@mauprogramador mauprogramador released this 23 Jan 01:56

🔖 Release v0.5.0 (2025-01-22)

🔨 Builds

  • Add libs to handle image and page.

✨ Features

  • Add score column and weight state param.
  • Reorganize and update use cases.
  • Reorganize and update routes.
  • Update params, add dependencies and new dynamic form.
  • Add security and web configs.
  • Update repository and add similarity column.
  • Add dynamic validation pattern.
  • Remove unnecessary enums.
  • Add lifespan and start state.
  • Reorganize and add two new formats.

♻️ Refactors

  • Update error message.
  • Add default http status for code.

📝 Chores

  • Update version to 0.5.0.
  • Add clean command.
  • Ignore local test and images.

v0.4.0

Choose a tag to compare

@mauprogramador mauprogramador released this 17 Jan 15:13

🔖 Release v0.4.0 (2025-01-17)

✨ Features

  • Add file report route and not found errors.
  • Add default limit and error message.
  • Code param to upper.

🔧 Fixes

  • Remove lru cache unhashable error.

♻️ Refactors

  • Update enum data uses.
  • Add error logs and response format.
  • Simplify enum data.

📝 Chores

  • Update version to 0.4.0.
  • Add rate limit info.

v0.3.0

Choose a tag to compare

@mauprogramador mauprogramador released this 17 Jan 09:39

🔖 Release v0.3.0 (2025-01-17)

🔨 Builds

  • Add venv generator.

✨ Features

  • Change file handler.
  • Update repository.
  • Add cached report formaters.
  • Update and add new route params.
  • Add retrieve, upload and operation report routes.
  • Add retrieve and upload cases.
  • Add cache to pydantic error filter.
  • Set docs url to root.
  • Add operations enum.

📝 Chores

  • Update version to 0.3.0.
  • Add info.

v0.2.0

Choose a tag to compare

@mauprogramador mauprogramador released this 16 Jan 12:40

🔖 Release v0.2.0 (2025-01-16)

🔨 Builds

  • Update and test docker.
  • Change asgi-ratelimit to slowapi.

✨ Features

  • Update entrypoint.
  • Add api.
  • Add functions and update logging settings.
  • Add and update core.
  • Add commons.
  • Add slowapi limiter config.
  • Reorganize project structure.

📝 Chores

  • Update gitignore.
  • Rename README to README.md.

📌 Others

  • Revert "Rename README to README.md".
  • Rename README to README.md.

v0.1.0

Choose a tag to compare

@mauprogramador mauprogramador released this 15 Jan 03:48

🔖 Release v0.1.0 (2025-01-14)

🔨 Builds

  • Build venv and container.

✨ Features

  • Add base app.
  • Add exception JSON and logger.
  • Add config env.
  • Add init and entrypoint.

📝 Chores

  • Add readme.
  • Init config files.