Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Benchmarks #1

Open
wants to merge 30 commits into
base: main
Choose a base branch
from
Open

Benchmarks #1

wants to merge 30 commits into from

Conversation

ahankinson
Copy link

No description provided.

ahankinson and others added 15 commits April 13, 2021 18:52
Delivers significant performance improvements by caching previously computed results.
# Conflicts:
#	edtf/fields.py
#	edtf/jdutil.py
#	edtf/natlang/en.py
#	edtf/natlang/tests.py
#	edtf/parser/grammar.py
#	edtf/parser/parser_classes.py
#	edtf/parser/tests.py
#	pyproject.toml
#	setup.py
Copy link

github-actions bot commented Aug 13, 2024

Coverage

Coverage Report
FileStmtsMissCoverMissing
/opt/hostedtoolcache/Python/3.8.18/x64/lib/python3.8/site-packages/edtf
   __init__.py40100% 
   appsettings.py28485%10–13
   convert.py634430%11–19, 21, 38–39, 51, 60, 71–73, 102, 105–107, 111, 115, 134–153, 155
   fields.py1192281%70, 84, 89, 91, 94–95, 97–98, 100, 105, 109–112, 135–136, 157, 167–168, 172–173, 181
   jdutil.py986632%37, 55, 91–92, 105, 152, 154–155, 157, 159, 161, 163, 165, 167, 169, 171, 173, 175, 251–252, 254–255, 257–258, 260, 262, 287, 291, 314, 316–317, 319, 321, 346, 348, 350, 370–372, 374, 376, 378, 381–383, 385, 387, 389, 392–393, 395, 397, 399–400, 402, 405–407, 410–413, 415, 417, 424, 431
   tests.py71710%3–4, 6, 9–13, 16–21, 24–25, 28–29, 32–37, 40–44, 52–53, 56–62, 65–71, 74–79, 82–85, 88–91, 94–97, 100–107
/opt/hostedtoolcache/Python/3.8.18/x64/lib/python3.8/site-packages/edtf/natlang
   __init__.py20100% 
   en.py1566955%60, 70–71, 73, 75–77, 82, 85, 88–89, 92–93, 95–99, 101–102, 104–106, 114–116, 118–122, 128, 130, 145, 151, 174–176, 178–182, 185–187, 189–193, 216–219, 223, 238, 240–241, 243, 260, 262, 270, 272, 274, 276, 281, 284, 290
   tests.py10100%3, 5, 10, 179, 184–185, 190–191, 207, 211
/opt/hostedtoolcache/Python/3.8.18/x64/lib/python3.8/site-packages/edtf/parser
   __init__.py40100% 
   edtf_exceptions.py151126%13–19, 22–24, 29
   grammar.py1281191%148–151, 350, 355–360
   parser_classes.py64636243%70, 72, 79–82, 84–85, 87–88, 111–113, 117, 120, 123, 183, 185, 192, 194, 200–204, 209–215, 222–226, 231–237, 267–269, 277–279, 287–289, 303, 307, 315–317, 322, 330–332, 335, 350–351, 355, 384–388, 391, 396–397, 400, 403, 406, 409–413, 416–420, 440–442, 466, 470, 475, 477, 496, 503, 519, 528–530, 532–534, 537–538, 540, 543–544, 546–549, 551–555, 557, 561, 574, 581–584, 587, 590–593, 596–599, 601–605, 608–609, 612, 616, 622–623, 626, 629–630, 633, 637–638, 641–642, 645, 651, 656–657, 663, 665, 668–670, 676, 681–682, 685, 691, 693, 697–711, 716–718, 722, 724, 727–729, 733, 735, 738, 741–742, 748–751, 756–757, 762–763, 765, 768, 771–773, 775, 778, 781–784, 786–792, 799–802, 804–810, 819–820, 823, 826, 829–831, 833, 855–857, 859–862, 864–865, 867–868, 870, 872, 881, 884, 887, 894–895, 897–898, 900, 902, 904–905, 907, 909–914, 916, 918, 920–921, 923, 926, 931–933, 936–938, 941–943, 951, 953–954, 957–958, 961–962, 965–966, 968–969, 973, 977–978, 981, 986–987, 991–992, 994–1002, 1004, 1014–1015, 1017, 1019–1020, 1022, 1025, 1030, 1035, 1040, 1044–1045, 1048–1049, 1052, 1054–1056, 1058, 1063–1064, 1066, 1074, 1078–1079, 1082–1083, 1086–1088, 1097–1098, 1100, 1102–1103, 1105–1108, 1120–1122, 1127, 1130–1131, 1133, 1138
   tests.py89890%3–4, 6, 8–10, 26, 229, 243, 262, 284, 286–289, 291–293, 295–299, 302–303, 305–306, 309–311, 314–315, 318–321, 324, 327–331, 334, 337, 340, 343–348, 351, 354, 357, 362–363, 365–366, 369–370, 372–374, 377, 379–384, 386–393, 396–398, 400, 403–404, 410–414
edtf
   __init__.py40100% 
   appsettings.py28292%12–13
   convert.py631182%11–19, 21, 72
   fields.py1191190%1, 3–8, 10–13, 15, 23, 29, 31, 33–35, 38–39, 51–58, 60, 63, 65–70, 72–76, 78–79, 81, 83–84, 86, 88–89, 91, 93–95, 97–98, 100, 102–105, 107, 109–112, 114, 123–125, 128, 131–132, 135–136, 139–140, 142–144, 147, 151, 153, 155, 157, 160–173, 179, 181–182, 184–185, 190–191, 193–194, 196, 204, 206, 208–209, 212–213, 223–226, 234
   jdutil.py984455%37, 55, 91–92, 287, 291, 314, 316–317, 319, 321, 346, 348, 350, 370–372, 374, 376, 378, 381–383, 385, 387, 389, 392–393, 395, 397, 399–400, 402, 405–407, 410–413, 415, 417, 424, 431
   tests.py710100% 
edtf/natlang
   __init__.py20100% 
   en.py1561192%85, 88, 145, 181–182, 192–193, 218–219, 223, 290
   tests.py10190%211
edtf/parser
   __init__.py40100% 
   edtf_exceptions.py15286%24, 29
   grammar.py128298%357, 359
   parser_classes.py64610084%111–113, 120, 123, 185, 191–195, 202–204, 211–215, 224–226, 231–237, 268, 279, 350–351, 384–388, 391, 406, 409–413, 416–420, 440–442, 544, 561, 597, 605, 609, 656–657, 663, 681–682, 685, 691, 698, 700, 704, 711, 778, 784, 788, 802, 806, 895, 913–914, 916, 921, 932, 937, 942, 978, 981, 987, 992, 994–1002, 1017, 1022, 1100, 1105, 1138
   tests.py89198%400
TOTAL2866105263% 

Tests Skipped Failures Errors Time
279 0 💤 0 ❌ 0 🔥 4.150s ⏱️

Copy link

github-actions bot commented Aug 13, 2024

Coverage

Coverage Report
FileStmtsMissCoverMissing
/opt/hostedtoolcache/Python/3.10.16/x64/lib/python3.10/site-packages/edtf
   __init__.py40100% 
   appsettings.py28485%10–13
   convert.py634430%11–19, 21, 38–39, 51, 60, 71–73, 102, 105–107, 111, 115, 134–153, 155
   fields.py1192281%70, 84, 89, 91, 94–95, 97–98, 100, 105, 109–112, 135–136, 157, 167–168, 172–173, 181
   jdutil.py986632%37, 55, 91–92, 105, 152, 154–155, 157, 159, 161, 163, 165, 167, 169, 171, 173, 175, 251–252, 254–255, 257–258, 260, 262, 287, 291, 314, 316–317, 319, 321, 346, 348, 350, 370–372, 374, 376, 378, 381–383, 385, 387, 389, 392–393, 395, 397, 399–400, 402, 405–407, 410–413, 415, 417, 424, 431
   tests.py71710%3–4, 6, 9–13, 16–21, 24–25, 28–29, 32–37, 40–44, 52–53, 56–62, 65–71, 74–79, 82–85, 88–91, 94–97, 100–107
/opt/hostedtoolcache/Python/3.10.16/x64/lib/python3.10/site-packages/edtf/natlang
   __init__.py20100% 
   en.py1566955%60, 70–71, 73, 75–77, 82, 85, 88–89, 92–93, 95–99, 101–102, 104–106, 114–116, 118–122, 128, 130, 145, 151, 174–176, 178–182, 185–187, 189–193, 216–219, 223, 238, 240–241, 243, 260, 262, 270, 272, 274, 276, 281, 284, 290
   tests.py10100%3, 5, 10, 179, 184–185, 190–191, 207, 211
/opt/hostedtoolcache/Python/3.10.16/x64/lib/python3.10/site-packages/edtf/parser
   __init__.py40100% 
   edtf_exceptions.py151126%13–19, 22–24, 29
   grammar.py1281191%148–151, 350, 355–360
   parser_classes.py64636243%70, 72, 79–82, 84–85, 87–88, 111–113, 117, 120, 123, 183, 185, 192, 194, 200–204, 209–215, 222–226, 231–237, 267–269, 277–279, 287–289, 303, 307, 315–317, 322, 330–332, 335, 350–351, 355, 384–388, 391, 396–397, 400, 403, 406, 409–413, 416–420, 440–442, 466, 470, 475, 477, 496, 503, 519, 528–530, 532–534, 537–538, 540, 543–544, 546–549, 551–555, 557, 561, 574, 581–584, 587, 590–593, 596–599, 601–605, 608–609, 612, 616, 622–623, 626, 629–630, 633, 637–638, 641–642, 645, 651, 656–657, 663, 665, 668–670, 676, 681–682, 685, 691, 693, 697–711, 716–718, 722, 724, 727–729, 733, 735, 738, 741–742, 748–751, 756–757, 762–763, 765, 768, 771–773, 775, 778, 781–784, 786–792, 799–802, 804–810, 819–820, 823, 826, 829–831, 833, 855–857, 859–862, 864–865, 867–868, 870, 872, 881, 884, 887, 894–895, 897–898, 900, 902, 904–905, 907, 909–914, 916, 918, 920–921, 923, 926, 931–933, 936–938, 941–943, 951, 953–954, 957–958, 961–962, 965–966, 968–969, 973, 977–978, 981, 986–987, 991–992, 994–1002, 1004, 1014–1015, 1017, 1019–1020, 1022, 1025, 1030, 1035, 1040, 1044–1045, 1048–1049, 1052, 1054–1056, 1058, 1063–1064, 1066, 1074, 1078–1079, 1082–1083, 1086–1088, 1097–1098, 1100, 1102–1103, 1105–1108, 1120–1122, 1127, 1130–1131, 1133, 1138
   tests.py89890%3–4, 6, 8–10, 26, 229, 243, 262, 284, 286–289, 291–293, 295–299, 302–303, 305–306, 309–311, 314–315, 318–321, 324, 327–331, 334, 337, 340, 343–348, 351, 354, 357, 362–363, 365–366, 369–370, 372–374, 377, 379–384, 386–393, 396–398, 400, 403–404, 410–414
edtf
   __init__.py40100% 
   appsettings.py28292%12–13
   convert.py631182%11–19, 21, 72
   fields.py1191190%1, 3–8, 10–13, 15, 23, 29, 31, 33–35, 38–39, 51–58, 60, 63, 65–70, 72–76, 78–79, 81, 83–84, 86, 88–89, 91, 93–95, 97–98, 100, 102–105, 107, 109–112, 114, 123–125, 128, 131–132, 135–136, 139–140, 142–144, 147, 151, 153, 155, 157, 160–173, 179, 181–182, 184–185, 190–191, 193–194, 196, 204, 206, 208–209, 212–213, 223–226, 234
   jdutil.py984455%37, 55, 91–92, 287, 291, 314, 316–317, 319, 321, 346, 348, 350, 370–372, 374, 376, 378, 381–383, 385, 387, 389, 392–393, 395, 397, 399–400, 402, 405–407, 410–413, 415, 417, 424, 431
   tests.py710100% 
edtf/natlang
   __init__.py20100% 
   en.py1561192%85, 88, 145, 181–182, 192–193, 218–219, 223, 290
   tests.py10190%211
edtf/parser
   __init__.py40100% 
   edtf_exceptions.py15286%24, 29
   grammar.py128298%357, 359
   parser_classes.py64610084%111–113, 120, 123, 185, 191–195, 202–204, 211–215, 224–226, 231–237, 268, 279, 350–351, 384–388, 391, 406, 409–413, 416–420, 440–442, 544, 561, 597, 605, 609, 656–657, 663, 681–682, 685, 691, 698, 700, 704, 711, 778, 784, 788, 802, 806, 895, 913–914, 916, 921, 932, 937, 942, 978, 981, 987, 992, 994–1002, 1017, 1022, 1100, 1105, 1138
   tests.py89198%400
TOTAL2866105263% 

Tests Skipped Failures Errors Time
279 0 💤 0 ❌ 0 🔥 4.423s ⏱️

Copy link

github-actions bot commented Aug 13, 2024

Coverage

Coverage Report
FileStmtsMissCoverMissing
/opt/hostedtoolcache/Python/3.11.11/x64/lib/python3.11/site-packages/edtf
   __init__.py40100% 
   appsettings.py28485%10–13
   convert.py634430%11–19, 21, 38–39, 51, 60, 71–73, 102, 105–107, 111, 115, 134–153, 155
   fields.py1192281%70, 84, 89, 91, 94–95, 97–98, 100, 105, 109–112, 135–136, 157, 167–168, 172–173, 181
   jdutil.py986632%37, 55, 91–92, 105, 152, 154–155, 157, 159, 161, 163, 165, 167, 169, 171, 173, 175, 251–252, 254–255, 257–258, 260, 262, 287, 291, 314, 316–317, 319, 321, 346, 348, 350, 370–372, 374, 376, 378, 381–383, 385, 387, 389, 392–393, 395, 397, 399–400, 402, 405–407, 410–413, 415, 417, 424, 431
   tests.py71710%3–4, 6, 9–13, 16–21, 24–25, 28–29, 32–37, 40–44, 52–53, 56–62, 65–71, 74–79, 82–85, 88–91, 94–97, 100–107
/opt/hostedtoolcache/Python/3.11.11/x64/lib/python3.11/site-packages/edtf/natlang
   __init__.py20100% 
   en.py1566955%60, 70–71, 73, 75–77, 82, 85, 88–89, 92–93, 95–99, 101–102, 104–106, 114–116, 118–122, 128, 130, 145, 151, 174–176, 178–182, 185–187, 189–193, 216–219, 223, 238, 240–241, 243, 260, 262, 270, 272, 274, 276, 281, 284, 290
   tests.py10100%3, 5, 10, 179, 184–185, 190–191, 207, 211
/opt/hostedtoolcache/Python/3.11.11/x64/lib/python3.11/site-packages/edtf/parser
   __init__.py40100% 
   edtf_exceptions.py151126%13–19, 22–24, 29
   grammar.py1281191%148–151, 350, 355–360
   parser_classes.py64636243%70, 72, 79–82, 84–85, 87–88, 111–113, 117, 120, 123, 183, 185, 192, 194, 200–204, 209–215, 222–226, 231–237, 267–269, 277–279, 287–289, 303, 307, 315–317, 322, 330–332, 335, 350–351, 355, 384–388, 391, 396–397, 400, 403, 406, 409–413, 416–420, 440–442, 466, 470, 475, 477, 496, 503, 519, 528–530, 532–534, 537–538, 540, 543–544, 546–549, 551–555, 557, 561, 574, 581–584, 587, 590–593, 596–599, 601–605, 608–609, 612, 616, 622–623, 626, 629–630, 633, 637–638, 641–642, 645, 651, 656–657, 663, 665, 668–670, 676, 681–682, 685, 691, 693, 697–711, 716–718, 722, 724, 727–729, 733, 735, 738, 741–742, 748–751, 756–757, 762–763, 765, 768, 771–773, 775, 778, 781–784, 786–792, 799–802, 804–810, 819–820, 823, 826, 829–831, 833, 855–857, 859–862, 864–865, 867–868, 870, 872, 881, 884, 887, 894–895, 897–898, 900, 902, 904–905, 907, 909–914, 916, 918, 920–921, 923, 926, 931–933, 936–938, 941–943, 951, 953–954, 957–958, 961–962, 965–966, 968–969, 973, 977–978, 981, 986–987, 991–992, 994–1002, 1004, 1014–1015, 1017, 1019–1020, 1022, 1025, 1030, 1035, 1040, 1044–1045, 1048–1049, 1052, 1054–1056, 1058, 1063–1064, 1066, 1074, 1078–1079, 1082–1083, 1086–1088, 1097–1098, 1100, 1102–1103, 1105–1108, 1120–1122, 1127, 1130–1131, 1133, 1138
   tests.py89890%3–4, 6, 8–10, 26, 229, 243, 262, 284, 286–289, 291–293, 295–299, 302–303, 305–306, 309–311, 314–315, 318–321, 324, 327–331, 334, 337, 340, 343–348, 351, 354, 357, 362–363, 365–366, 369–370, 372–374, 377, 379–384, 386–393, 396–398, 400, 403–404, 410–414
edtf
   __init__.py40100% 
   appsettings.py28292%12–13
   convert.py631182%11–19, 21, 72
   fields.py1191190%1, 3–8, 10–13, 15, 23, 29, 31, 33–35, 38–39, 51–58, 60, 63, 65–70, 72–76, 78–79, 81, 83–84, 86, 88–89, 91, 93–95, 97–98, 100, 102–105, 107, 109–112, 114, 123–125, 128, 131–132, 135–136, 139–140, 142–144, 147, 151, 153, 155, 157, 160–173, 179, 181–182, 184–185, 190–191, 193–194, 196, 204, 206, 208–209, 212–213, 223–226, 234
   jdutil.py984455%37, 55, 91–92, 287, 291, 314, 316–317, 319, 321, 346, 348, 350, 370–372, 374, 376, 378, 381–383, 385, 387, 389, 392–393, 395, 397, 399–400, 402, 405–407, 410–413, 415, 417, 424, 431
   tests.py710100% 
edtf/natlang
   __init__.py20100% 
   en.py1561192%85, 88, 145, 181–182, 192–193, 218–219, 223, 290
   tests.py10190%211
edtf/parser
   __init__.py40100% 
   edtf_exceptions.py15286%24, 29
   grammar.py128298%357, 359
   parser_classes.py64610084%111–113, 120, 123, 185, 191–195, 202–204, 211–215, 224–226, 231–237, 268, 279, 350–351, 384–388, 391, 406, 409–413, 416–420, 440–442, 544, 561, 597, 605, 609, 656–657, 663, 681–682, 685, 691, 698, 700, 704, 711, 778, 784, 788, 802, 806, 895, 913–914, 916, 921, 932, 937, 942, 978, 981, 987, 992, 994–1002, 1017, 1022, 1100, 1105, 1138
   tests.py89198%400
TOTAL2866105263% 

Tests Skipped Failures Errors Time
279 0 💤 0 ❌ 0 🔥 4.290s ⏱️

Copy link

github-actions bot commented Aug 13, 2024

Coverage

Coverage Report
FileStmtsMissCoverMissing
/opt/hostedtoolcache/Python/3.9.21/x64/lib/python3.9/site-packages/edtf
   __init__.py40100% 
   appsettings.py28485%10–13
   convert.py634430%11–19, 21, 38–39, 51, 60, 71–73, 102, 105–107, 111, 115, 134–153, 155
   fields.py1192281%70, 84, 89, 91, 94–95, 97–98, 100, 105, 109–112, 135–136, 157, 167–168, 172–173, 181
   jdutil.py986632%37, 55, 91–92, 105, 152, 154–155, 157, 159, 161, 163, 165, 167, 169, 171, 173, 175, 251–252, 254–255, 257–258, 260, 262, 287, 291, 314, 316–317, 319, 321, 346, 348, 350, 370–372, 374, 376, 378, 381–383, 385, 387, 389, 392–393, 395, 397, 399–400, 402, 405–407, 410–413, 415, 417, 424, 431
   tests.py71710%3–4, 6, 9–13, 16–21, 24–25, 28–29, 32–37, 40–44, 52–53, 56–62, 65–71, 74–79, 82–85, 88–91, 94–97, 100–107
/opt/hostedtoolcache/Python/3.9.21/x64/lib/python3.9/site-packages/edtf/natlang
   __init__.py20100% 
   en.py1566955%60, 70–71, 73, 75–77, 82, 85, 88–89, 92–93, 95–99, 101–102, 104–106, 114–116, 118–122, 128, 130, 145, 151, 174–176, 178–182, 185–187, 189–193, 216–219, 223, 238, 240–241, 243, 260, 262, 270, 272, 274, 276, 281, 284, 290
   tests.py10100%3, 5, 10, 179, 184–185, 190–191, 207, 211
/opt/hostedtoolcache/Python/3.9.21/x64/lib/python3.9/site-packages/edtf/parser
   __init__.py40100% 
   edtf_exceptions.py151126%13–19, 22–24, 29
   grammar.py1281191%148–151, 350, 355–360
   parser_classes.py64636243%70, 72, 79–82, 84–85, 87–88, 111–113, 117, 120, 123, 183, 185, 192, 194, 200–204, 209–215, 222–226, 231–237, 267–269, 277–279, 287–289, 303, 307, 315–317, 322, 330–332, 335, 350–351, 355, 384–388, 391, 396–397, 400, 403, 406, 409–413, 416–420, 440–442, 466, 470, 475, 477, 496, 503, 519, 528–530, 532–534, 537–538, 540, 543–544, 546–549, 551–555, 557, 561, 574, 581–584, 587, 590–593, 596–599, 601–605, 608–609, 612, 616, 622–623, 626, 629–630, 633, 637–638, 641–642, 645, 651, 656–657, 663, 665, 668–670, 676, 681–682, 685, 691, 693, 697–711, 716–718, 722, 724, 727–729, 733, 735, 738, 741–742, 748–751, 756–757, 762–763, 765, 768, 771–773, 775, 778, 781–784, 786–792, 799–802, 804–810, 819–820, 823, 826, 829–831, 833, 855–857, 859–862, 864–865, 867–868, 870, 872, 881, 884, 887, 894–895, 897–898, 900, 902, 904–905, 907, 909–914, 916, 918, 920–921, 923, 926, 931–933, 936–938, 941–943, 951, 953–954, 957–958, 961–962, 965–966, 968–969, 973, 977–978, 981, 986–987, 991–992, 994–1002, 1004, 1014–1015, 1017, 1019–1020, 1022, 1025, 1030, 1035, 1040, 1044–1045, 1048–1049, 1052, 1054–1056, 1058, 1063–1064, 1066, 1074, 1078–1079, 1082–1083, 1086–1088, 1097–1098, 1100, 1102–1103, 1105–1108, 1120–1122, 1127, 1130–1131, 1133, 1138
   tests.py89890%3–4, 6, 8–10, 26, 229, 243, 262, 284, 286–289, 291–293, 295–299, 302–303, 305–306, 309–311, 314–315, 318–321, 324, 327–331, 334, 337, 340, 343–348, 351, 354, 357, 362–363, 365–366, 369–370, 372–374, 377, 379–384, 386–393, 396–398, 400, 403–404, 410–414
edtf
   __init__.py40100% 
   appsettings.py28292%12–13
   convert.py631182%11–19, 21, 72
   fields.py1191190%1, 3–8, 10–13, 15, 23, 29, 31, 33–35, 38–39, 51–58, 60, 63, 65–70, 72–76, 78–79, 81, 83–84, 86, 88–89, 91, 93–95, 97–98, 100, 102–105, 107, 109–112, 114, 123–125, 128, 131–132, 135–136, 139–140, 142–144, 147, 151, 153, 155, 157, 160–173, 179, 181–182, 184–185, 190–191, 193–194, 196, 204, 206, 208–209, 212–213, 223–226, 234
   jdutil.py984455%37, 55, 91–92, 287, 291, 314, 316–317, 319, 321, 346, 348, 350, 370–372, 374, 376, 378, 381–383, 385, 387, 389, 392–393, 395, 397, 399–400, 402, 405–407, 410–413, 415, 417, 424, 431
   tests.py710100% 
edtf/natlang
   __init__.py20100% 
   en.py1561192%85, 88, 145, 181–182, 192–193, 218–219, 223, 290
   tests.py10190%211
edtf/parser
   __init__.py40100% 
   edtf_exceptions.py15286%24, 29
   grammar.py128298%357, 359
   parser_classes.py64610084%111–113, 120, 123, 185, 191–195, 202–204, 211–215, 224–226, 231–237, 268, 279, 350–351, 384–388, 391, 406, 409–413, 416–420, 440–442, 544, 561, 597, 605, 609, 656–657, 663, 681–682, 685, 691, 698, 700, 704, 711, 778, 784, 788, 802, 806, 895, 913–914, 916, 921, 932, 937, 942, 978, 981, 987, 992, 994–1002, 1017, 1022, 1100, 1105, 1138
   tests.py89198%400
TOTAL2866105263% 

Tests Skipped Failures Errors Time
279 0 💤 0 ❌ 0 🔥 4.308s ⏱️

Copy link

github-actions bot commented Aug 13, 2024

Coverage

Coverage Report
FileStmtsMissCoverMissing
/opt/hostedtoolcache/Python/3.12.8/x64/lib/python3.12/site-packages/edtf
   __init__.py40100% 
   appsettings.py28485%10–13
   convert.py634430%11–19, 21, 38–39, 51, 60, 71–73, 102, 105–107, 111, 115, 134–153, 155
   fields.py1192281%70, 84, 89, 91, 94–95, 97–98, 100, 105, 109–112, 135–136, 157, 167–168, 172–173, 181
   jdutil.py986632%37, 55, 91–92, 105, 152, 154–155, 157, 159, 161, 163, 165, 167, 169, 171, 173, 175, 251–252, 254–255, 257–258, 260, 262, 287, 291, 314, 316–317, 319, 321, 346, 348, 350, 370–372, 374, 376, 378, 381–383, 385, 387, 389, 392–393, 395, 397, 399–400, 402, 405–407, 410–413, 415, 417, 424, 431
   tests.py71710%3–4, 6, 9–13, 16–21, 24–25, 28–29, 32–37, 40–44, 52–53, 56–62, 65–71, 74–79, 82–85, 88–91, 94–97, 100–107
/opt/hostedtoolcache/Python/3.12.8/x64/lib/python3.12/site-packages/edtf/natlang
   __init__.py20100% 
   en.py1566955%60, 70–71, 73, 75–77, 82, 85, 88–89, 92–93, 95–99, 101–102, 104–106, 114–116, 118–122, 128, 130, 145, 151, 174–176, 178–182, 185–187, 189–193, 216–219, 223, 238, 240–241, 243, 260, 262, 270, 272, 274, 276, 281, 284, 290
   tests.py10100%3, 5, 10, 179, 184–185, 190–191, 207, 211
/opt/hostedtoolcache/Python/3.12.8/x64/lib/python3.12/site-packages/edtf/parser
   __init__.py40100% 
   edtf_exceptions.py151126%13–19, 22–24, 29
   grammar.py1281191%148–151, 350, 355–360
   parser_classes.py64636243%70, 72, 79–82, 84–85, 87–88, 111–113, 117, 120, 123, 183, 185, 192, 194, 200–204, 209–215, 222–226, 231–237, 267–269, 277–279, 287–289, 303, 307, 315–317, 322, 330–332, 335, 350–351, 355, 384–388, 391, 396–397, 400, 403, 406, 409–413, 416–420, 440–442, 466, 470, 475, 477, 496, 503, 519, 528–530, 532–534, 537–538, 540, 543–544, 546–549, 551–555, 557, 561, 574, 581–584, 587, 590–593, 596–599, 601–605, 608–609, 612, 616, 622–623, 626, 629–630, 633, 637–638, 641–642, 645, 651, 656–657, 663, 665, 668–670, 676, 681–682, 685, 691, 693, 697–711, 716–718, 722, 724, 727–729, 733, 735, 738, 741–742, 748–751, 756–757, 762–763, 765, 768, 771–773, 775, 778, 781–784, 786–792, 799–802, 804–810, 819–820, 823, 826, 829–831, 833, 855–857, 859–862, 864–865, 867–868, 870, 872, 881, 884, 887, 894–895, 897–898, 900, 902, 904–905, 907, 909–914, 916, 918, 920–921, 923, 926, 931–933, 936–938, 941–943, 951, 953–954, 957–958, 961–962, 965–966, 968–969, 973, 977–978, 981, 986–987, 991–992, 994–1002, 1004, 1014–1015, 1017, 1019–1020, 1022, 1025, 1030, 1035, 1040, 1044–1045, 1048–1049, 1052, 1054–1056, 1058, 1063–1064, 1066, 1074, 1078–1079, 1082–1083, 1086–1088, 1097–1098, 1100, 1102–1103, 1105–1108, 1120–1122, 1127, 1130–1131, 1133, 1138
   tests.py89890%3–4, 6, 8–10, 26, 229, 243, 262, 284, 286–289, 291–293, 295–299, 302–303, 305–306, 309–311, 314–315, 318–321, 324, 327–331, 334, 337, 340, 343–348, 351, 354, 357, 362–363, 365–366, 369–370, 372–374, 377, 379–384, 386–393, 396–398, 400, 403–404, 410–414
edtf
   __init__.py40100% 
   appsettings.py28292%12–13
   convert.py631182%11–19, 21, 72
   fields.py1191190%1, 3–8, 10–13, 15, 23, 29, 31, 33–35, 38–39, 51–58, 60, 63, 65–70, 72–76, 78–79, 81, 83–84, 86, 88–89, 91, 93–95, 97–98, 100, 102–105, 107, 109–112, 114, 123–125, 128, 131–132, 135–136, 139–140, 142–144, 147, 151, 153, 155, 157, 160–173, 179, 181–182, 184–185, 190–191, 193–194, 196, 204, 206, 208–209, 212–213, 223–226, 234
   jdutil.py984455%37, 55, 91–92, 287, 291, 314, 316–317, 319, 321, 346, 348, 350, 370–372, 374, 376, 378, 381–383, 385, 387, 389, 392–393, 395, 397, 399–400, 402, 405–407, 410–413, 415, 417, 424, 431
   tests.py710100% 
edtf/natlang
   __init__.py20100% 
   en.py1561192%85, 88, 145, 181–182, 192–193, 218–219, 223, 290
   tests.py10190%211
edtf/parser
   __init__.py40100% 
   edtf_exceptions.py15286%24, 29
   grammar.py128298%357, 359
   parser_classes.py64610084%111–113, 120, 123, 185, 191–195, 202–204, 211–215, 224–226, 231–237, 268, 279, 350–351, 384–388, 391, 406, 409–413, 416–420, 440–442, 544, 561, 597, 605, 609, 656–657, 663, 681–682, 685, 691, 698, 700, 704, 711, 778, 784, 788, 802, 806, 895, 913–914, 916, 921, 932, 937, 942, 978, 981, 987, 992, 994–1002, 1017, 1022, 1100, 1105, 1138
   tests.py89198%400
TOTAL2866105263% 

Tests Skipped Failures Errors Time
279 0 💤 0 ❌ 0 🔥 5.472s ⏱️

Copy link

@github-actions github-actions bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Benchmark

Benchmark suite Current: e51b710 Previous: 9c8b9d1 Ratio
edtf/natlang/tests.py::test_benchmark_natlang[23rd Dynasty-None] 79774.78988429862 iter/sec (stddev: 0.0000013851475412639628) 69395.16051320166 iter/sec (stddev: 0.0000014134208586771668) 0.87
edtf/natlang/tests.py::test_benchmark_natlang[January 2008-2008-01] 8693.486510978464 iter/sec (stddev: 0.000007045910065364571) 9088.898365905337 iter/sec (stddev: 0.000007311883502245592) 1.05
edtf/natlang/tests.py::test_benchmark_natlang[ca1860-1860~] 9983.045923300922 iter/sec (stddev: 0.000015328751671507914) 10536.427206286704 iter/sec (stddev: 0.00000869656370176594) 1.06
edtf/natlang/tests.py::test_benchmark_natlang[uncertain: approx 1862-1862%] 6872.14135523073 iter/sec (stddev: 0.000012852741756004871) 7365.67296423216 iter/sec (stddev: 0.00002074857349662771) 1.07
edtf/natlang/tests.py::test_benchmark_natlang[January-XXXX-01] 12339.657989936466 iter/sec (stddev: 0.000011372673120117634) 12700.417163332606 iter/sec (stddev: 0.000007763450142110117) 1.03
edtf/natlang/tests.py::test_benchmark_natlang[Winter 1872-1872-24] 8949.988675830158 iter/sec (stddev: 0.00000836165969321353) 9345.322155253703 iter/sec (stddev: 0.000007167413838326226) 1.04
edtf/natlang/tests.py::test_benchmark_natlang[before approx January 18 1928-/1928-01-18~] 5668.533389836924 iter/sec (stddev: 0.000008642414002715004) 6349.081304884251 iter/sec (stddev: 0.000007919444895876892) 1.12
edtf/natlang/tests.py::test_benchmark_natlang[birthday in 1872-1872] 7698.968847931701 iter/sec (stddev: 0.000007401444217798162) 8214.368685040796 iter/sec (stddev: 0.000008573670469639895) 1.07
edtf/natlang/tests.py::test_benchmark_natlang[1270 CE-1270] 51053.133185402374 iter/sec (stddev: 0.0000019437750152946256) 49362.28779807187 iter/sec (stddev: 0.0000019122244933026575) 0.97
edtf/natlang/tests.py::test_benchmark_natlang[2nd century bce--01XX] 43713.026251760755 iter/sec (stddev: 0.000005392602672138514) 44185.240547052534 iter/sec (stddev: 0.0000022142127356187115) 1.01
edtf/natlang/tests.py::test_benchmark_natlang[1858/1860-[1858, 1860]] 24073.182416261698 iter/sec (stddev: 0.000005684398898243732) 23979.65299039596 iter/sec (stddev: 0.0000040605725892386356) 1.00
edtf/parser/tests.py::test_benchmark_parser[2001-02-03] 155.9847905158386 iter/sec (stddev: 0.0005197506881682327) 171.25933379034885 iter/sec (stddev: 0.0005642796665579916) 1.10
edtf/parser/tests.py::test_benchmark_parser[2008-12] 160.61296407191173 iter/sec (stddev: 0.0018977920428319786) 178.5973848092607 iter/sec (stddev: 0.0017893617138103517) 1.11
edtf/parser/tests.py::test_benchmark_parser[2008] 187.39587470124084 iter/sec (stddev: 0.0018727716632371935) 213.0306562782692 iter/sec (stddev: 0.0016894167662234768) 1.14
edtf/parser/tests.py::test_benchmark_parser[-0999] 189.62918431531878 iter/sec (stddev: 0.0013419752191771868) 202.05228748512303 iter/sec (stddev: 0.0017732594554404776) 1.07
edtf/parser/tests.py::test_benchmark_parser[2004-01-01T10:10:10+05:00] 139.123157811028 iter/sec (stddev: 0.001566720718062073) 148.4315261832691 iter/sec (stddev: 0.001892578075829402) 1.07
edtf/parser/tests.py::test_benchmark_parser[-2005/-1999-02] 116.94232537013389 iter/sec (stddev: 0.0021418671525518327) 115.65213919850822 iter/sec (stddev: 0.002412451468116546) 0.99
edtf/parser/tests.py::test_benchmark_parser[/2006] 318.0381166639062 iter/sec (stddev: 0.00024746715416329185) 258.00818152404844 iter/sec (stddev: 0.00013313305384168237) 0.81
edtf/parser/tests.py::test_benchmark_parser[?2004-%06] 217.64511917771023 iter/sec (stddev: 0.0010189879505672602) 228.25501945682055 iter/sec (stddev: 0.0010930767941194192) 1.05
edtf/parser/tests.py::test_benchmark_parser[[1667, 1760-12]] 31.535766305630972 iter/sec (stddev: 0.0007417768608200883) 18.824519597814877 iter/sec (stddev: 0.0016492490641144262) 0.60
edtf/parser/tests.py::test_benchmark_parser[Y3388E2S3] 434.4870756243414 iter/sec (stddev: 0.0008426676499363713) 426.78911300861057 iter/sec (stddev: 0.0008141247414062612) 0.98
edtf/parser/tests.py::test_benchmark_parser[2001-29] 118.27633865812172 iter/sec (stddev: 0.0015456503451241872) 122.45030941218971 iter/sec (stddev: 0.0017190321261276724) 1.04

This comment was automatically generated by workflow using github-action-benchmark.

Also added Andrew Hankinson to the authors list in pyproject.toml
I've had a pass at the Parser Classes file, but there are a lot of problems still to be sorted out.

I've added return types and argument types whereever it makes sense.

The "UncertainOrApproximate" class is a hot mess. There are boolean values with property and method calls associated with them, and I would be surprised if it actually works. However, it doesn't seem to be tested or implemented, so I can't figure out where to go from here.
This wasn't actually used anywhere!

Also removed a redundant regex group
Copy link

@github-actions github-actions bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ Performance Alert ⚠️

Possible performance regression was detected for benchmark.
Benchmark result of this commit is worse than the previous benchmark result exceeding threshold 2.

Benchmark suite Current: 9c8b9d1 Previous: 51255e3 Ratio
edtf/natlang/tests.py::test_benchmark_natlang[23rd Dynasty-None] 69395.16051320166 iter/sec (stddev: 0.0000014134208586771668) 3541928.773400012 iter/sec (stddev: 9.68032736021079e-8) 51.04
edtf/natlang/tests.py::test_benchmark_natlang[January 2008-2008-01] 9088.898365905337 iter/sec (stddev: 0.000007311883502245592) 3430974.3814481827 iter/sec (stddev: 1.5442413250947235e-7) 377.49
edtf/natlang/tests.py::test_benchmark_natlang[ca1860-1860~] 10536.427206286704 iter/sec (stddev: 0.00000869656370176594) 3089178.178035518 iter/sec (stddev: 5.4601010287957946e-8) 293.19
edtf/natlang/tests.py::test_benchmark_natlang[uncertain: approx 1862-1862%] 7365.67296423216 iter/sec (stddev: 0.00002074857349662771) 3229125.91377079 iter/sec (stddev: 3.2379216557299555e-8) 438.40
edtf/natlang/tests.py::test_benchmark_natlang[January-XXXX-01] 12700.417163332606 iter/sec (stddev: 0.000007763450142110117) 3368121.1215553223 iter/sec (stddev: 3.972937351691444e-8) 265.20
edtf/natlang/tests.py::test_benchmark_natlang[Winter 1872-1872-24] 9345.322155253703 iter/sec (stddev: 0.000007167413838326226) 3533042.5170700424 iter/sec (stddev: 4.6347118400829334e-8) 378.05
edtf/natlang/tests.py::test_benchmark_natlang[before approx January 18 1928-/1928-01-18~] 6349.081304884251 iter/sec (stddev: 0.000007919444895876892) 3384197.38576659 iter/sec (stddev: 2.493774769118655e-7) 533.02
edtf/natlang/tests.py::test_benchmark_natlang[birthday in 1872-1872] 8214.368685040796 iter/sec (stddev: 0.000008573670469639895) 3496595.4966845135 iter/sec (stddev: 5.306616696800164e-8) 425.67
edtf/natlang/tests.py::test_benchmark_natlang[1270 CE-1270] 49362.28779807187 iter/sec (stddev: 0.0000019122244933026575) 3514650.9138252772 iter/sec (stddev: 1.3841494592800146e-7) 71.20
edtf/natlang/tests.py::test_benchmark_natlang[2nd century bce--01XX] 44185.240547052534 iter/sec (stddev: 0.0000022142127356187115) 3514928.7751975628 iter/sec (stddev: 1.944995132887494e-7) 79.55
edtf/natlang/tests.py::test_benchmark_natlang[1858/1860-[1858, 1860]] 23979.65299039596 iter/sec (stddev: 0.0000040605725892386356) 3485516.3747026883 iter/sec (stddev: 7.215368108788735e-8) 145.35

This comment was automatically generated by workflow using github-action-benchmark.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants