356 Commits

Author SHA1 Message Date
Sina Atalay
1e04ab0d25 Fix settings field issues 2025-12-12 22:27:12 +03:00
Sina Atalay
547b6dc806 Improve placeholders and JSON Schema 2025-12-12 13:29:15 +03:00
Sina Atalay
ac828184f1 Fix multiline summary issues 2025-12-12 13:22:23 +03:00
Sina Atalay
ee3c6f31ba Increase test coverage 2025-12-10 18:49:31 +03:00
Sina Atalay
81851c18e7 Fix cli tests 2025-12-10 18:42:40 +03:00
Sina Atalay
dfa53be33c Fix Windows tests 2025-12-10 18:36:51 +03:00
Sina Atalay
8563f729e8 Fix render command issue (#543) 2025-12-10 18:06:21 +03:00
Sina Atalay
0dfe129040 Increase test coverage 2025-12-10 00:59:06 +03:00
Sina Atalay
72b6ed3cd9 Add invalid whatsapp username test 2025-12-10 00:03:20 +03:00
Sina Atalay
51979c6462 Fix Windows tests 2025-12-09 23:53:16 +03:00
Sina Atalay
6bd1cadf36 Improve error handling 2025-12-09 23:20:06 +03:00
Sina Atalay
5cc5fbdf9e Massive Refactor: Architecture Redesign and Technical Debt Cleanup (#528)
* Rename `data` folder with schema

* Start refactoring data models

* Work on entry models

* Keep working on entries

* Keep working on data models

* Push old data files

* Keep working on data models

* First draft of schema.cv

* Keep working on schema

* Keep working on schema

* Improve schema.models

* Keep working on rendercv.schema

* Work on schema.design

* Keep working on rendercv.schema

* Complete variant_class_generator

* Keep working rendercv.schema

* Keep working on rendercv.schema

* Final touches to rendercv.schema

* Improve json schema descriptions in rendercv.schema

* Start working on rendercv.schema tests

* Keep implementing rendercv.schema tests

* Add more tests for rendercv.schema

* Improve rendercv.schema

* Improve docstrings and comments in rendercv.schema

* Implement better pydantic error handling in `rendercv.schema`

* Improve variant class system

* Fix rendercv.schema tests

* Start working on rendercv.templater

* Update template names

* Switching to new rendercv typst template soon

* Work on new templater

* Rename renderer with renderer_old

* Don't use utils in rendercv.schema

* Complete connections

* Update renderer folder structure

* Work on new renderer

* Work on new renderer

* Date processing on new renderer

* Improve date processing, support multiple emails, phones, and websites

* Improve markdown to Typst

* Complete entry template processing

* Time span computation in new renderer

* Better entry templates

* Setup new templates

* Improve rendercv.schema

* Start adding tests for rendercv.renderer

* New markdown parser!

* Improve markdown to typst conversion

* Finalize markdown parser

* Add new test files for rendercv.renderer

* Fix cv and connections

* Add connections test

* Improve connection tests

* Improve entry templates

* Add model processor tests

* Improve templater

* Rename old folders

* Improve schema

* Add file generation logic to renderer

* Fix naming issues

* Fix schema tests

* Add path type tests

* Add font family and typst dimension type tests

* Rename old tests

* Fix design tests

* Start integration testing of renderer

* Improve entry tempates

* Handle nested highlights properly

* Finalize Typst preamble template

* Start working on new CLI

* Remove old test files

* Implement override dictionary in new schema

* Start working on new CLI

* Better prints on render command

* New structure

* New render printer

* Add all the commands to new CLI

* Work on new command in new cli

* Improve new command

* Add error handler to new cli

* Work on create theme command

* Complete create theme command

* Remove old source files

* Improve exceptions

* Create new docs

* Add writing tests guide

* Fix cli printer and write tests

* Test copy templates

* Add app tests

* Bring back accidentally removed files

* Imporve cli and tests

* Fix path issues

* Improve

* Improve

* Add reference file comparison tests

* Fix path resolver

* Start working on test_pdf_png

* Implement comparison of multiple files (png)

* Start testing typst

* Fix templating issues

* Fix header and entry templates issues

* Implement short second rows

* Fix date issues

* Fix nested bullets and add summary

* Update testdata

* Implement footer

* Update testdata

* Reimagined design and locale schema, first iteration

* Reimagined design and locale second iteration

* Update design and locale schemas

* Adapt templater to the new design and locale

* Fix tests

* Update lib.typ and testdata for the new locale and design

* Implement proper tests with all combinations of entries

* Remove some docstrings

* fix connections logic

* Improve

* Start working on examples

* Update testdata

* Fix long second row issue

* fix templating issues

* Fix lib.typ issues

* Update testdata

* Fix clean_trailing_parts

* Update test cv

* update test cv

* Update theme defaults

* update schema and fix moderncv

* Fix moderncv issues

* Update testdata

* Update testdata and examples

* Fix issues about photo

* Fix typst photo path issues

* improve entry templates from yaml

* add new locale

* Rename writing tests doc

* Update writing tests

* Improve tests

* Add more cli tests

* Increase test coverage

* Rename variant pydantic model generator

* Improve tests

* Update testdata and improve tests

* Format, fix pre-commit errors

* Fix scripts and update entry figures

* Improve tests

* Write docstrings of schema

* Write schema docstrings

* Setup api reference

* Start working on new docs

* Work on docs

* Improve progress panel of render command

* Finalize new docs index

* Complete CLI docs

* Work on YAML input structure page

* Finalize user guide

* Start working on developer guide

* Improve api reference

* Improve developer guide

* Improve developer guide

* Improve developer gide

* Improve developer guide

* Improve developer guide

* Update developer guide

* Improve developer guide

* Improve developer guide

* Improve developer guide

* Developer guide first draft

* update developer guide

* Update examples

* Update testdata

* Handle wrong installation (rendercv instead of rendercv[full])

* Remove unnecessary files

* Write set up vs code page

* Update README.md

* Change docs description

* Compress design options gif

* minor updates

* Polish all the json schema descriptions

* Update testdata and examples

* Remove some emdashed from docs

* Add whatsapp support

* Add TestEscapeTypstCharacters to tests

* Implement custom connections

* Add page break before sections feature

* Revert page break before sections feature

* Rebase to main

* Fix social network tests, update schema
2025-12-09 17:03:56 +03:00
Jakob Stender Gulberg
a45537deb4 Build/test in parallel - now with proper coverage reporting (#535)
* ci: did a roleback and reimplemented changes

* chore: added coverage for debugging

* disable xdist

* minor fix

* degging with tolerance

* updated test data

* reverted test

* chore: lint

* test cli in seriel

* we never dispatched xdist as loadgroup

* forced groups and extras

* ci: more typo fixing

* run grouped by file

* test: added pytest-rerunfailures for flaky tests

* test: removed mark as the we use file based distribution

---------

Co-authored-by: Jakob Guldberg Aaes <jakob1379@gmali.com>
2025-11-18 19:35:20 +03:00
Ian Holloway
8ad18fe9c0 add grade field to education entry (#463)
* add grade field to education entry

* remove optional and use "| None"

* remove optional and use "| None"

* update schema
2025-10-23 21:21:32 +03:00
Ian Holloway
bebbf8d04c Create optional automaitc sorting capabilites for entries (#461)
* Fix sorting stability and add tie-break tests

* update schema

* formatting

* fix error with import

* fix failing test case
2025-10-23 21:20:56 +03:00
Ian Holloway
7586b47044 fix all test errors and warnings (#456)
* fix test case test_main_file

* Enhance Typst source preprocessing to eliminate unwanted spacing caused by inline formatting

* make changes to pass hatch run default:format

* remove most warnings from pytest

* fix the all warnings

* fix ruff

* remove noqa comments

* remove duplicate line of code

* run ruff format

* add read_a_yaml_file_with_coordinates function to read YAML files with location info

* refactor: add type annotations to field_info variables for clarity

* run ruff format

* update schema
2025-10-23 00:04:37 +03:00
Jesse Spielman
bf45cb2869 Add IMDB social network (#479)
* Add IMDB social network to CV model

* Add IMDB to schema.json with other social networks

* Add tests for IMDB social Network
2025-10-22 23:48:26 +03:00
Thiago Perrotta
9510138a7c ci(pre-commit): add yamllint (#496) 2025-10-22 23:45:08 +03:00
Jakob Stender Gulberg
88dc67be35 build: Add codespell pre-commit hook and correct various typos (#469)
* build: Add codespell pre-commit hook and correct various typos

* Update design.py

---------

Co-authored-by: Jakob Stender Guldberg <jakob1379gmail.com>
2025-09-14 16:05:10 +03:00
Sina Atalay
a3ad85420e Update examples 2025-03-01 20:30:22 -05:00
Sina Atalay
8385b529e9 Fix API issues and update schema (#358) 2025-02-16 22:55:10 -05:00
Sina Atalay
0318d26854 Add new fields: design.header.use_urls_as_placeholders_for_connections, design.header.make_connections_links, and design.highlights.highlights_nested_bullet_field_info 2025-02-16 20:13:44 -05:00
Sina Atalay
b3b8a760fd Fix spelling error, with-parial-line (#349) 2025-02-09 19:18:18 -05:00
Sina Atalay
361df43c57 Improve markdown_to_typst 2025-02-08 18:42:43 -05:00
Sina Atalay
c6428adcd8 Improve API 2025-02-08 18:42:43 -05:00
Sina Atalay
38ffe33138 Improve workflows 2025-02-08 18:08:33 -05:00
Sina Atalay
f6f8c490f4 Improve the documentation 2025-02-04 22:27:42 -05:00
Sina Atalay
0ddd489951 Improve hatch scripts and create executables 2025-02-04 18:53:34 -05:00
Sina Atalay
0318b1a270 Add a new social network: X (#212, #187, #109, #107) 2025-02-02 22:52:31 -05:00
Sina Atalay
23ec504cbe Improve validation and JSON Schema 2025-02-02 22:05:58 -05:00
Sina Atalay
c9d6a5a3e9 Allow using Typst commands in the YAML file 2025-02-02 18:50:15 -05:00
Sina Atalay
c171ff5549 Fix render --png-path is not copying all the png files (#332) 2025-02-02 18:25:03 -05:00
Sina Atalay
99f97d12b2 Add a new field: design.entries.allow_page_break_in_sections 2025-02-02 18:03:14 -05:00
Sina Atalay
adafc307a4 Create two entry types: NumberedEntry and ReversedNumberedEntry 2025-02-02 17:49:08 -05:00
Sina Atalay
f441b5742a Handle None entries 2025-01-26 16:24:30 -05:00
Sina Atalay
63bfa0dd07 tests: skip test_if_the_schema_is_the_latest 2025-01-25 19:21:46 -05:00
Sina Atalay
5c16e2c3f0 tests: fix test_if_the_schema_is_the_latest 2025-01-25 19:18:15 -05:00
Sina Atalay
35b77d2884 tests: update test_render_command_with_invalid_arguments 2025-01-25 18:06:27 -05:00
Sina Atalay
f6eb8b48c2 tests: update api test 2025-01-25 18:00:39 -05:00
Sina Atalay
02b7350734 fix formatting 2025-01-20 09:45:14 -05:00
Sina Atalay
bd1be140bf tests: disable test_if_the_schema_is_the_latest in Windows 2025-01-20 09:32:50 -05:00
Sina Atalay
438ff8d13b Bundle Font Awesome 6 fonts (#314)
* Bundle Font Awesome 6 fonts

* hope to skip less tests with font awesome fix

* update schema

* format

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

* fix

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

* fix

---------

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
2025-01-19 23:51:14 -05:00
Sina Atalay
a4687b31cc Fix path issues in rendercv_settings and CLI (#312)
* fix #272

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

---------

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
2025-01-19 19:41:04 -05:00
Marcin Konowalczyk
bf38e29362 Change bold and italics typst source generation (#303)
* use #emph and #strong instead of underscores and asterisks

* convert remaining asterisks

* templater #strong and #emph

Change templater to use #strong and #emph instead of * and _ respectively.

* update classic test files (no pdf diff)

* update engineeringclassic test files (no pdf diff)

* update sb2nov test files (no pdf diff)

* update engineeringrer test data (minor pdf diff)

engineeringresumes_empty_long_second_row.pdf
0 of 1 pages differ.
engineeringresumes_empty_short_second_row.pdf
0 of 1 pages differ.
engineeringresumes_filled_long_second_row.pdf
13 of 39 pages differ.
engineeringresumes_filled_short_second_row.pdf
14 of 45 pages differ.

The diff is one extra comma which tbh, was probably supposed to be there anyway:

Old: `Bogaziçi University in Mechanical Engineering: - Istanbul, Turkey`
New: `Bogaziçi University, in Mechanical Engineering: - Istanbul, Turkey`

* update moderncv test data (minor pdf diff)

moderncv_empty_long_second_row.pdf
0 of 1 pages differ.
moderncv_empty_short_second_row.pdf
0 of 1 pages differ.
moderncv_filled_long_second_row.pdf
14 of 46 pages differ.
moderncv_filled_short_second_row.pdf
14 of 46 pages differ.

Same diff as for engineeringresumes -- one extra comma which, was probably supposed to be there anyway:

Old: `Bogaziçi University in Mechanical Engineering: - Istanbul, Turkey`
New: `Bogaziçi University, in Mechanical Engineering: - Istanbul, Turkey`

* update markdown_to_typst test

* fix link fixing

* add link fixing test

* update templater.py

* fix a test

* fix a linting error

---------

Co-authored-by: Sina Atalay <dev@atalay.biz>
2025-01-19 19:02:03 -05:00
Marcin Konowalczyk
0f37939f7d Improve packaging version comparison (#299)
* proper packaging version comparison

* fix tests

* test_rendercv_no_version_when_there_is_no_new_version

* Augment test

* small changes

---------

Co-authored-by: Sina Atalay <dev@atalay.biz>
2025-01-19 18:45:39 -05:00
Sina Atalay
efe308ae1c tests: skip more tests 2025-01-07 15:01:31 +03:00
Sina Atalay
9f795af8da fix linting issues 2025-01-07 14:56:15 +03:00
Sina Atalay
c02a4be7db tests: skip more tests 2025-01-07 14:55:53 +03:00
Sina Atalay
135bc9d160 fix linting issues 2025-01-07 14:51:30 +03:00
Sina Atalay
7bb2ca4eab tests: skip failed tests for now 2025-01-07 14:50:48 +03:00