Commit Graph

34 Commits

Author SHA1 Message Date
maurane cf83a06cfe ♻️refactor(parser): refactor parsing methods 2026-09-10 09:46:16 +02:00
maurane d37733457f 🐛fix(cli): fix methods on list instead of queryset 2026-09-10 09:22:39 +02:00
maurane 32df98e64b ✅test(project): add mail_reader tests
fix unprecised typings replacing QuerySet type by list[Message] type, exclude test directory from mypy analysis and add tests for mail_reader.
2026-09-09 19:09:38 +02:00
maurane 150eb5145d ✨feat(project): add from-mails command
add `from-mails` command that connect to the mailbox using configurations in .env file, parse, classify and report all not analyzed files.
2026-09-08 18:32:49 +02:00
maurane 348ed05d91 ✨feat(mail_reader): implement mail reader
implement mail reader functions that fetch, read all matching mails, convert them into list of log string, ready to be analyzed by the parser
2026-09-07 17:29:19 +02:00
maurane 95e34c520c 🐛fix(project): add logger on errors in cli module 2026-09-04 10:18:15 +02:00
maurane 5a93d0d67b 🐛fix(classifier): remove store code error pattern
remove store code error, its related fixture (`CR_store_code_not_found`) and mentionned in fixtures `only_relevant_logs.txt` and `specific_logs.txt`
2026-09-02 18:21:25 +02:00
maurane b2b68e1072 📝docs(project): add CHANGELOG.md v0.0.1 2026-09-02 14:17:09 +02:00
maurane 21fda4103e 🔧chore(project): remove unecessary files
remove unecessary files from repository
2026-09-02 14:06:55 +02:00
maurane bfa5fa600b 📝docs(docs): add documentation for README.md
add documentation in README.md, usage.md, architecture.md, update python version based on the version used in development
2026-09-02 11:52:27 +02:00
maurane a43afb9df7 ✨feat(project): add logging in project
add logging in modules classier.py, parser.py, reporter.py. Update logging in cli.
2026-09-01 17:21:17 +02:00
maurane 24a77363d0 💄style(project): turn all restructure docstrings into google docstrings 2026-09-01 15:38:27 +02:00
maurane b6dab13bd1 ✨feat(cli): add cli features
add cli using typer, its option --input-dir, --input-files and --output-dir, add related tests, add logging, add and update of the package version in `logwatcher/__init__.py`, correct templates in `reporter.py`
2026-09-01 14:53:18 +02:00
maurane ee118b531d ♻️ refactor(cli): rename app module by cli for clarity 2026-08-28 15:24:16 +02:00
maurane 8e98a44a7f 💄style(logging): rename logging by logging_config
naming the logging module of logwatcher like the built-in python package is confusing. By naming it `logging_config`, everything is explicit.
2026-08-28 14:58:08 +02:00
maurane 9c06222f37 ✅test(reporter): add tests for reporter module
add tests, reformat code, add an output variable in writing function. All reading and writing functions must read in windows-1252 encoding because original logs are windows-1252 encoded
2026-08-27 17:34:22 +02:00
maurane b83ee451a3 feat(reporter): ✨ add reporter main functions
we can now generate reports based on log files. Three reports are processed: n2 report, other report and general report combining the two previous reports. All reports would be available in the output directory.
2026-08-26 18:00:55 +02:00
maurane 23afe3f185 feat(classifier): ✨ add classifier feature on log entries
add classifier on log entries, clean test functions and uniform fixtures in windows-1252 since all logs are encoded in windows-1252
2026-08-26 11:34:54 +02:00
maurane 51adcfd8ad chore(project): 🗑️ remove temporary file, add todo reminder
remove the test_unicode.txt used for unicode reading tests. Todo reminder is for coverage score to improve in the future
2026-08-25 12:59:10 +02:00
maurane f7d0940c86 chore(projet_settings): 🧑‍💻 remove IDE config files
.vscode, .coverage and .idea was added to keep a clean code base
2026-08-25 12:52:55 +02:00
maurane 59a04c6761 test(classifier): ✅ add tests that assert that fixtures must exist with their associated existing pattern
a log line cannot match multiple patterns. Again a fixture can only exist in codebase if its associated pattern also exists.
2026-08-25 12:39:50 +02:00
maurane 476b69d26f test(classifier): ✅ add test on n2 patterns 2026-08-07 17:27:37 +02:00
maurane 19ff504890 feat: ✨ add main log patterns 2026-08-07 14:06:43 +02:00
maurane 0c097974b7 test(parser): ✅ refactor initial test, add new tests and fixtures 2026-08-04 11:33:54 +02:00
maurane 83867c585c feat(parser): ✨ add parse_log_file and simplify LogEntry model
`parse_log_file()` use `parse_log_line()` to transform a log file into a list of LogEntry. Log patterns are no use for LogEntry model since the only use of LogEntry is in other modules. Thus, log patterns are now in `parser.py`. Logs are now separated based on test use cases.
2026-08-04 11:31:37 +02:00
maurane 36195ace3b test(parser): add test for parse_log_line() 2026-08-03 14:12:52 +02:00
maurane e057ec58e1 refactor(parser): change parser() by parse_log_line() function 2026-08-03 14:08:16 +02:00
maurane 6951454b8a chore(projet_settings): update the vscode project settings 2026-08-03 13:59:09 +02:00
maurane 7df7afed22 fix(parser): 🐛 update the file_path value in _get_logs() 2026-08-03 13:57:47 +02:00
maurane b8c8af6dda chore(log_entry): add getters for datetime attributes 2026-08-03 13:40:16 +02:00
maurane 10602be7a3 feat(log_entry): add model and tests 2026-08-03 13:30:03 +02:00
maurane 63893513ee test(logging); add tests for setup_handler and setup_formatter function 2026-07-29 19:42:52 +02:00
maurane d02887f164 feat(logging): add logging setup 2026-07-29 15:28:38 +02:00
maurane 6977a69cdc chore: initialise logwatcher project 2026-07-29 13:35:21 +02:00