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

[DROOLS-7090] Fixing PMML to work with in memory GeneratedResources #5

Merged
merged 1 commit into from
Aug 29, 2022

Conversation

gitgabrio
Copy link

@gitgabrio gitgabrio commented Aug 29, 2022

Hi @tkobayas
This PR fixes the PMML-related issues I found in the drools build.
I have found the following issues that IMO should be fixed:

  1. there are some GeneratedResourceUtils methods (like isPresentExecutableOrRedirect(FRI fri, String modelType)) that implicitily looks for GeneratedResources inside the IndexFile; this is become a big source of bug, because all the client code now is "unaware" of that and brokes randomly (or it must be fixed one by one); I think it would be better to change all those public methods to accept the "Context", and implement only methods that looks for generated reources inside the context
  2. similarly, there are some utility methods (like DrlRuntimeHelper.canManage(EfestoInput toEvaluate)) that in the same way implicitily looks for GeneratedResources inside the `IndexFile; I think that as for the previous point, also those methods should be removed (I guess they will become "self-evident" when point 1 is done)

Wdyt ?

P.S. this PR is just a partial fix

@tkobayas
Copy link
Owner

Thanks a lot! @gitgabrio

@tkobayas tkobayas merged commit 27ed62a into tkobayas:DROOLS-7090 Aug 29, 2022
tkobayas added a commit that referenced this pull request Jan 17, 2024
…culation result of int and BigDecimal (apache#5636) (#2) (#5)

Co-authored-by: Toshiya Kobayashi <toshiyakobayashi@gmail.com>
tkobayas added a commit that referenced this pull request Feb 9, 2024
- Added MiscDRLParserTest which is being ported from RuleParserTest to enhance coverage.
tkobayas added a commit that referenced this pull request Feb 15, 2024
- Added MiscDRLParserTest which is being ported from RuleParserTest to enhance coverage.
tkobayas added a commit that referenced this pull request Feb 19, 2024
apache#5682)

* add antlr4 based drl parser

* bump to drools 8.16.0.Beta

* improve node position discovery

* first c3 integration

* Module reorganization (#2)

* WIP

* Ignore directories

* Add debug. Minor modifications

* WIP

* Fix tests - add comments

* manage null ast nodes and fix failing test

* improve drl parser

* Fix basic completion (#4)

* Add Java grammar, fix DRL grammar, simplify token index calculation, remove template code

* Add ignored tokens to completion

Co-authored-by: livio <livio.bencik@mindsmiths.com>

* add constraints parsing

* - Added DRLParserWrapper to store errors using DRLErrorListener (#5)

- Added MiscDRLParserTest which is being ported from RuleParserTest to enhance coverage.

* Enhance test/grammar coverage. function import, global, exists, not (#6)

* Enhance test/grammar coverage. and, or, listExpression (#7)

* Enhance test/grammar coverage. matches, single quoted string, escape (#9)

- Introduced drlExpression, drlPrimary, drlLiteral, DRL_STRING_LITERAL

* Enhance test/grammar coverage. dialect, invalid lhs (apache#10)

* Enhance test/grammar coverage. keyword collision (apache#11)

- Add "DRL_" prefix for DRL keywords for clarification

* Enhance test/grammar coverage. function, attributes, consequence (apache#12)

* Enhance test/grammar coverage. function, attributes, consequence
- better getText preserving whitespaces
- resolving WARNs because of overlapping keywords

* - No need to declare duplicate keywords

* Enhance test/grammar coverage. OR, inline map (apache#13)

* OpenRewrite applied for junit5 and assertj (apache#14)

* Enhance test/grammar coverage. label, consequenceLocation, test refac… (apache#15)

* Enhance test/grammar coverage. label, consequenceLocation, test refactoring, assertj best practice

* - better test method names

* [DROOLS-7253] Review and improve drools-lsp parser Visitor design (apache#16)

* [DROOLS-7253] Review and improve drools-lsp parser Visitor design
- Remove currentConstructStack. Utilize return object instead.

* - Remove instance fields. Utilize return objects instead.

* [DROOLS-7270] Enhance test/grammar coverage : andRestriction, orRestriction (#4)

- Removed some unused cast

* [DROOLS-7271] Fully port RuleParserTest as MiscDRLParserTest with @disabled and priority comment (apache#10)

* [DROOLS-7285] Failed to parse and/or with parentheses in LHS (apache#15)

* [DROOLS-7286] Failed to parse binding with || (apache#21)

* [DROOLS-7287] Failed to parse comments in RHS (apache#23)

* [DROOLS-7287] Failed to parse comments in RHS

* - add rhs string check

* [DROOLS-7515] Parser : Accept plain text in RHS (apache#26)

* [DROOLS-7515] Parser : Accept plain text in RHS

* - Handle keyword token in RHS

* - Removed sysout

* - Revert statementKeywords. Instead, define DRL_END with newline or EOF

* - fix method name

* [DROOLS-7288] Failed to parse complex parentheses (apache#27)

* [DROOLS-7288] Failed to parse complex parentheses
- bump to 8.43.0.Final

* additional tests

* [DROOLS-7289] Implement accumulate (apache#28)

* [DROOLS-7296] Implement from entry-point (apache#30)

* [DROOLS-7297] Implement import accumulate (apache#29)

* [DROOLS-7290] Implement BigInteger literal, BigDecimal literal (apache#31)

* [DROOLS-7292] Implement eval (apache#32)

* [DROOLS-7293] Implement extends (apache#33)

* [DROOLS-7294] Implement forall (apache#34)

* [DROOLS-7298] Implement memberOf (apache#35)

* [DROOLS-7300] Implement positional constraint (apache#36)

* [DROOLS-7304] Implement temporal operators (apache#38)

- Also covers [DROOLS-7303] Implement sliding window

* [DROOLS-7301] Implement query (apache#37)

- Also partially fixes [DROOLS-7302] Implement semicolon delimiter

* [DROOLS-7295] Implement from collect (apache#39)

* [DROOLS-7305] Implement type declaration (apache#40)

- also covers [DROOLS-7291] Implement entry-point declaration
- also covers window declaration

* [DROOLS-7306] Implement unification (apache#41)

* [DROOLS-7306] Implement unification
- Also [DROOLS-7307] Parse attribute agenda-group

* [DROOLS-7308] Parse attribute without value
- Also [DROOLS-7309] Parse attribute with parentheses

* [DROOLS-7310] parse nested parentheses (apache#42)

* [DROOLS-7310] parse nested parentheses

* - Adding code commentes and explanations
- Adding more nested level tests

* [DROOLS-7577] drools-lsp : Add comments and explanations for drools-p… (apache#43)

* [DROOLS-7577] drools-lsp : Add comments and explanations for drools-parser

* removed syntax examples

* [DROOLS-7591] Experiment branch : migrate a new drools-lsp parser into drools (apache#44)

- Add some methods to call from drools code base

* Move necessary files without any additional modifications

* Update DRL6Expressions.g4 to ANTLR 4 (apache#47)

* Add DescrDumperTest and fix the expression parser grammar (apache#48)

* Add DescrDumperTest

* Fix it

* [DROOLS-7591] Experiment branch : migrate a new drools-lsp parser into drools
- New parser is migrated in drools-drl/drools-drl-parser with org.drools.drl10.parser package
- To enable the new parser, run `mvn test -PDRL10`
- At the moment, we get lots of test failures especially in drools-model/drools-model-codegen and drools-test-coverage/test-compiler-integration

* - License header
- Revert an inappropriate test edit
- Removed unnecessary profile
- Clarify unsupported methods
- Removed unnecessary bom dependency

---------

Co-authored-by: mariofusco <mario.fusco@gmail.com>
Co-authored-by: Gabriele Cardosi <gabriele.cardosi@gmail.com>
Co-authored-by: Livio Benčik <lbenc135@gmail.com>
Co-authored-by: livio <livio.bencik@mindsmiths.com>
Co-authored-by: Jiří Locker <jiri.locker@gmail.com>
tkobayas added a commit that referenced this pull request Feb 19, 2024
- Added MiscDRLParserTest which is being ported from RuleParserTest to enhance coverage.
tkobayas added a commit that referenced this pull request Jun 11, 2024
apache#5682)

* add antlr4 based drl parser

* bump to drools 8.16.0.Beta

* improve node position discovery

* first c3 integration

* Module reorganization (#2)

* WIP

* Ignore directories

* Add debug. Minor modifications

* WIP

* Fix tests - add comments

* manage null ast nodes and fix failing test

* improve drl parser

* Fix basic completion (#4)

* Add Java grammar, fix DRL grammar, simplify token index calculation, remove template code

* Add ignored tokens to completion

Co-authored-by: livio <livio.bencik@mindsmiths.com>

* add constraints parsing

* - Added DRLParserWrapper to store errors using DRLErrorListener (#5)

- Added MiscDRLParserTest which is being ported from RuleParserTest to enhance coverage.

* Enhance test/grammar coverage. function import, global, exists, not (#6)

* Enhance test/grammar coverage. and, or, listExpression (#7)

* Enhance test/grammar coverage. matches, single quoted string, escape (#9)

- Introduced drlExpression, drlPrimary, drlLiteral, DRL_STRING_LITERAL

* Enhance test/grammar coverage. dialect, invalid lhs (apache#10)

* Enhance test/grammar coverage. keyword collision (apache#11)

- Add "DRL_" prefix for DRL keywords for clarification

* Enhance test/grammar coverage. function, attributes, consequence (apache#12)

* Enhance test/grammar coverage. function, attributes, consequence
- better getText preserving whitespaces
- resolving WARNs because of overlapping keywords

* - No need to declare duplicate keywords

* Enhance test/grammar coverage. OR, inline map (apache#13)

* OpenRewrite applied for junit5 and assertj (apache#14)

* Enhance test/grammar coverage. label, consequenceLocation, test refac… (apache#15)

* Enhance test/grammar coverage. label, consequenceLocation, test refactoring, assertj best practice

* - better test method names

* [DROOLS-7253] Review and improve drools-lsp parser Visitor design (apache#16)

* [DROOLS-7253] Review and improve drools-lsp parser Visitor design
- Remove currentConstructStack. Utilize return object instead.

* - Remove instance fields. Utilize return objects instead.

* [DROOLS-7270] Enhance test/grammar coverage : andRestriction, orRestriction (#4)

- Removed some unused cast

* [DROOLS-7271] Fully port RuleParserTest as MiscDRLParserTest with @disabled and priority comment (apache#10)

* [DROOLS-7285] Failed to parse and/or with parentheses in LHS (apache#15)

* [DROOLS-7286] Failed to parse binding with || (apache#21)

* [DROOLS-7287] Failed to parse comments in RHS (apache#23)

* [DROOLS-7287] Failed to parse comments in RHS

* - add rhs string check

* [DROOLS-7515] Parser : Accept plain text in RHS (apache#26)

* [DROOLS-7515] Parser : Accept plain text in RHS

* - Handle keyword token in RHS

* - Removed sysout

* - Revert statementKeywords. Instead, define DRL_END with newline or EOF

* - fix method name

* [DROOLS-7288] Failed to parse complex parentheses (apache#27)

* [DROOLS-7288] Failed to parse complex parentheses
- bump to 8.43.0.Final

* additional tests

* [DROOLS-7289] Implement accumulate (apache#28)

* [DROOLS-7296] Implement from entry-point (apache#30)

* [DROOLS-7297] Implement import accumulate (apache#29)

* [DROOLS-7290] Implement BigInteger literal, BigDecimal literal (apache#31)

* [DROOLS-7292] Implement eval (apache#32)

* [DROOLS-7293] Implement extends (apache#33)

* [DROOLS-7294] Implement forall (apache#34)

* [DROOLS-7298] Implement memberOf (apache#35)

* [DROOLS-7300] Implement positional constraint (apache#36)

* [DROOLS-7304] Implement temporal operators (apache#38)

- Also covers [DROOLS-7303] Implement sliding window

* [DROOLS-7301] Implement query (apache#37)

- Also partially fixes [DROOLS-7302] Implement semicolon delimiter

* [DROOLS-7295] Implement from collect (apache#39)

* [DROOLS-7305] Implement type declaration (apache#40)

- also covers [DROOLS-7291] Implement entry-point declaration
- also covers window declaration

* [DROOLS-7306] Implement unification (apache#41)

* [DROOLS-7306] Implement unification
- Also [DROOLS-7307] Parse attribute agenda-group

* [DROOLS-7308] Parse attribute without value
- Also [DROOLS-7309] Parse attribute with parentheses

* [DROOLS-7310] parse nested parentheses (apache#42)

* [DROOLS-7310] parse nested parentheses

* - Adding code commentes and explanations
- Adding more nested level tests

* [DROOLS-7577] drools-lsp : Add comments and explanations for drools-p… (apache#43)

* [DROOLS-7577] drools-lsp : Add comments and explanations for drools-parser

* removed syntax examples

* [DROOLS-7591] Experiment branch : migrate a new drools-lsp parser into drools (apache#44)

- Add some methods to call from drools code base

* Move necessary files without any additional modifications

* Update DRL6Expressions.g4 to ANTLR 4 (apache#47)

* Add DescrDumperTest and fix the expression parser grammar (apache#48)

* Add DescrDumperTest

* Fix it

* [DROOLS-7591] Experiment branch : migrate a new drools-lsp parser into drools
- New parser is migrated in drools-drl/drools-drl-parser with org.drools.drl10.parser package
- To enable the new parser, run `mvn test -PDRL10`
- At the moment, we get lots of test failures especially in drools-model/drools-model-codegen and drools-test-coverage/test-compiler-integration

* - License header
- Revert an inappropriate test edit
- Removed unnecessary profile
- Clarify unsupported methods
- Removed unnecessary bom dependency

---------

Co-authored-by: mariofusco <mario.fusco@gmail.com>
Co-authored-by: Gabriele Cardosi <gabriele.cardosi@gmail.com>
Co-authored-by: Livio Benčik <lbenc135@gmail.com>
Co-authored-by: livio <livio.bencik@mindsmiths.com>
Co-authored-by: Jiří Locker <jiri.locker@gmail.com>
tkobayas added a commit that referenced this pull request Jun 11, 2024
- Added MiscDRLParserTest which is being ported from RuleParserTest to enhance coverage.
tkobayas added a commit that referenced this pull request Oct 2, 2024
apache#5682)

* add antlr4 based drl parser

* bump to drools 8.16.0.Beta

* improve node position discovery

* first c3 integration

* Module reorganization (#2)

* WIP

* Ignore directories

* Add debug. Minor modifications

* WIP

* Fix tests - add comments

* manage null ast nodes and fix failing test

* improve drl parser

* Fix basic completion (#4)

* Add Java grammar, fix DRL grammar, simplify token index calculation, remove template code

* Add ignored tokens to completion

Co-authored-by: livio <livio.bencik@mindsmiths.com>

* add constraints parsing

* - Added DRLParserWrapper to store errors using DRLErrorListener (#5)

- Added MiscDRLParserTest which is being ported from RuleParserTest to enhance coverage.

* Enhance test/grammar coverage. function import, global, exists, not (#6)

* Enhance test/grammar coverage. and, or, listExpression (#7)

* Enhance test/grammar coverage. matches, single quoted string, escape (#9)

- Introduced drlExpression, drlPrimary, drlLiteral, DRL_STRING_LITERAL

* Enhance test/grammar coverage. dialect, invalid lhs (apache#10)

* Enhance test/grammar coverage. keyword collision (apache#11)

- Add "DRL_" prefix for DRL keywords for clarification

* Enhance test/grammar coverage. function, attributes, consequence (apache#12)

* Enhance test/grammar coverage. function, attributes, consequence
- better getText preserving whitespaces
- resolving WARNs because of overlapping keywords

* - No need to declare duplicate keywords

* Enhance test/grammar coverage. OR, inline map (apache#13)

* OpenRewrite applied for junit5 and assertj (apache#14)

* Enhance test/grammar coverage. label, consequenceLocation, test refac… (apache#15)

* Enhance test/grammar coverage. label, consequenceLocation, test refactoring, assertj best practice

* - better test method names

* [DROOLS-7253] Review and improve drools-lsp parser Visitor design (apache#16)

* [DROOLS-7253] Review and improve drools-lsp parser Visitor design
- Remove currentConstructStack. Utilize return object instead.

* - Remove instance fields. Utilize return objects instead.

* [DROOLS-7270] Enhance test/grammar coverage : andRestriction, orRestriction (#4)

- Removed some unused cast

* [DROOLS-7271] Fully port RuleParserTest as MiscDRLParserTest with @disabled and priority comment (apache#10)

* [DROOLS-7285] Failed to parse and/or with parentheses in LHS (apache#15)

* [DROOLS-7286] Failed to parse binding with || (apache#21)

* [DROOLS-7287] Failed to parse comments in RHS (apache#23)

* [DROOLS-7287] Failed to parse comments in RHS

* - add rhs string check

* [DROOLS-7515] Parser : Accept plain text in RHS (apache#26)

* [DROOLS-7515] Parser : Accept plain text in RHS

* - Handle keyword token in RHS

* - Removed sysout

* - Revert statementKeywords. Instead, define DRL_END with newline or EOF

* - fix method name

* [DROOLS-7288] Failed to parse complex parentheses (apache#27)

* [DROOLS-7288] Failed to parse complex parentheses
- bump to 8.43.0.Final

* additional tests

* [DROOLS-7289] Implement accumulate (apache#28)

* [DROOLS-7296] Implement from entry-point (apache#30)

* [DROOLS-7297] Implement import accumulate (apache#29)

* [DROOLS-7290] Implement BigInteger literal, BigDecimal literal (apache#31)

* [DROOLS-7292] Implement eval (apache#32)

* [DROOLS-7293] Implement extends (apache#33)

* [DROOLS-7294] Implement forall (apache#34)

* [DROOLS-7298] Implement memberOf (apache#35)

* [DROOLS-7300] Implement positional constraint (apache#36)

* [DROOLS-7304] Implement temporal operators (apache#38)

- Also covers [DROOLS-7303] Implement sliding window

* [DROOLS-7301] Implement query (apache#37)

- Also partially fixes [DROOLS-7302] Implement semicolon delimiter

* [DROOLS-7295] Implement from collect (apache#39)

* [DROOLS-7305] Implement type declaration (apache#40)

- also covers [DROOLS-7291] Implement entry-point declaration
- also covers window declaration

* [DROOLS-7306] Implement unification (apache#41)

* [DROOLS-7306] Implement unification
- Also [DROOLS-7307] Parse attribute agenda-group

* [DROOLS-7308] Parse attribute without value
- Also [DROOLS-7309] Parse attribute with parentheses

* [DROOLS-7310] parse nested parentheses (apache#42)

* [DROOLS-7310] parse nested parentheses

* - Adding code commentes and explanations
- Adding more nested level tests

* [DROOLS-7577] drools-lsp : Add comments and explanations for drools-p… (apache#43)

* [DROOLS-7577] drools-lsp : Add comments and explanations for drools-parser

* removed syntax examples

* [DROOLS-7591] Experiment branch : migrate a new drools-lsp parser into drools (apache#44)

- Add some methods to call from drools code base

* Move necessary files without any additional modifications

* Update DRL6Expressions.g4 to ANTLR 4 (apache#47)

* Add DescrDumperTest and fix the expression parser grammar (apache#48)

* Add DescrDumperTest

* Fix it

* [DROOLS-7591] Experiment branch : migrate a new drools-lsp parser into drools
- New parser is migrated in drools-drl/drools-drl-parser with org.drools.drl10.parser package
- To enable the new parser, run `mvn test -PDRL10`
- At the moment, we get lots of test failures especially in drools-model/drools-model-codegen and drools-test-coverage/test-compiler-integration

* - License header
- Revert an inappropriate test edit
- Removed unnecessary profile
- Clarify unsupported methods
- Removed unnecessary bom dependency

---------

Co-authored-by: mariofusco <mario.fusco@gmail.com>
Co-authored-by: Gabriele Cardosi <gabriele.cardosi@gmail.com>
Co-authored-by: Livio Benčik <lbenc135@gmail.com>
Co-authored-by: livio <livio.bencik@mindsmiths.com>
Co-authored-by: Jiří Locker <jiri.locker@gmail.com>
tkobayas added a commit that referenced this pull request Oct 2, 2024
- Added MiscDRLParserTest which is being ported from RuleParserTest to enhance coverage.
tkobayas added a commit that referenced this pull request Oct 11, 2024
apache#5682)

* add antlr4 based drl parser

* bump to drools 8.16.0.Beta

* improve node position discovery

* first c3 integration

* Module reorganization (#2)

* WIP

* Ignore directories

* Add debug. Minor modifications

* WIP

* Fix tests - add comments

* manage null ast nodes and fix failing test

* improve drl parser

* Fix basic completion (#4)

* Add Java grammar, fix DRL grammar, simplify token index calculation, remove template code

* Add ignored tokens to completion

Co-authored-by: livio <livio.bencik@mindsmiths.com>

* add constraints parsing

* - Added DRLParserWrapper to store errors using DRLErrorListener (#5)

- Added MiscDRLParserTest which is being ported from RuleParserTest to enhance coverage.

* Enhance test/grammar coverage. function import, global, exists, not (#6)

* Enhance test/grammar coverage. and, or, listExpression (#7)

* Enhance test/grammar coverage. matches, single quoted string, escape (#9)

- Introduced drlExpression, drlPrimary, drlLiteral, DRL_STRING_LITERAL

* Enhance test/grammar coverage. dialect, invalid lhs (apache#10)

* Enhance test/grammar coverage. keyword collision (apache#11)

- Add "DRL_" prefix for DRL keywords for clarification

* Enhance test/grammar coverage. function, attributes, consequence (apache#12)

* Enhance test/grammar coverage. function, attributes, consequence
- better getText preserving whitespaces
- resolving WARNs because of overlapping keywords

* - No need to declare duplicate keywords

* Enhance test/grammar coverage. OR, inline map (apache#13)

* OpenRewrite applied for junit5 and assertj (apache#14)

* Enhance test/grammar coverage. label, consequenceLocation, test refac… (apache#15)

* Enhance test/grammar coverage. label, consequenceLocation, test refactoring, assertj best practice

* - better test method names

* [DROOLS-7253] Review and improve drools-lsp parser Visitor design (apache#16)

* [DROOLS-7253] Review and improve drools-lsp parser Visitor design
- Remove currentConstructStack. Utilize return object instead.

* - Remove instance fields. Utilize return objects instead.

* [DROOLS-7270] Enhance test/grammar coverage : andRestriction, orRestriction (#4)

- Removed some unused cast

* [DROOLS-7271] Fully port RuleParserTest as MiscDRLParserTest with @disabled and priority comment (apache#10)

* [DROOLS-7285] Failed to parse and/or with parentheses in LHS (apache#15)

* [DROOLS-7286] Failed to parse binding with || (apache#21)

* [DROOLS-7287] Failed to parse comments in RHS (apache#23)

* [DROOLS-7287] Failed to parse comments in RHS

* - add rhs string check

* [DROOLS-7515] Parser : Accept plain text in RHS (apache#26)

* [DROOLS-7515] Parser : Accept plain text in RHS

* - Handle keyword token in RHS

* - Removed sysout

* - Revert statementKeywords. Instead, define DRL_END with newline or EOF

* - fix method name

* [DROOLS-7288] Failed to parse complex parentheses (apache#27)

* [DROOLS-7288] Failed to parse complex parentheses
- bump to 8.43.0.Final

* additional tests

* [DROOLS-7289] Implement accumulate (apache#28)

* [DROOLS-7296] Implement from entry-point (apache#30)

* [DROOLS-7297] Implement import accumulate (apache#29)

* [DROOLS-7290] Implement BigInteger literal, BigDecimal literal (apache#31)

* [DROOLS-7292] Implement eval (apache#32)

* [DROOLS-7293] Implement extends (apache#33)

* [DROOLS-7294] Implement forall (apache#34)

* [DROOLS-7298] Implement memberOf (apache#35)

* [DROOLS-7300] Implement positional constraint (apache#36)

* [DROOLS-7304] Implement temporal operators (apache#38)

- Also covers [DROOLS-7303] Implement sliding window

* [DROOLS-7301] Implement query (apache#37)

- Also partially fixes [DROOLS-7302] Implement semicolon delimiter

* [DROOLS-7295] Implement from collect (apache#39)

* [DROOLS-7305] Implement type declaration (apache#40)

- also covers [DROOLS-7291] Implement entry-point declaration
- also covers window declaration

* [DROOLS-7306] Implement unification (apache#41)

* [DROOLS-7306] Implement unification
- Also [DROOLS-7307] Parse attribute agenda-group

* [DROOLS-7308] Parse attribute without value
- Also [DROOLS-7309] Parse attribute with parentheses

* [DROOLS-7310] parse nested parentheses (apache#42)

* [DROOLS-7310] parse nested parentheses

* - Adding code commentes and explanations
- Adding more nested level tests

* [DROOLS-7577] drools-lsp : Add comments and explanations for drools-p… (apache#43)

* [DROOLS-7577] drools-lsp : Add comments and explanations for drools-parser

* removed syntax examples

* [DROOLS-7591] Experiment branch : migrate a new drools-lsp parser into drools (apache#44)

- Add some methods to call from drools code base

* Move necessary files without any additional modifications

* Update DRL6Expressions.g4 to ANTLR 4 (apache#47)

* Add DescrDumperTest and fix the expression parser grammar (apache#48)

* Add DescrDumperTest

* Fix it

* [DROOLS-7591] Experiment branch : migrate a new drools-lsp parser into drools
- New parser is migrated in drools-drl/drools-drl-parser with org.drools.drl10.parser package
- To enable the new parser, run `mvn test -PDRL10`
- At the moment, we get lots of test failures especially in drools-model/drools-model-codegen and drools-test-coverage/test-compiler-integration

* - License header
- Revert an inappropriate test edit
- Removed unnecessary profile
- Clarify unsupported methods
- Removed unnecessary bom dependency

---------

Co-authored-by: mariofusco <mario.fusco@gmail.com>
Co-authored-by: Gabriele Cardosi <gabriele.cardosi@gmail.com>
Co-authored-by: Livio Benčik <lbenc135@gmail.com>
Co-authored-by: livio <livio.bencik@mindsmiths.com>
Co-authored-by: Jiří Locker <jiri.locker@gmail.com>
tkobayas added a commit that referenced this pull request Oct 11, 2024
- Added MiscDRLParserTest which is being ported from RuleParserTest to enhance coverage.
tkobayas added a commit that referenced this pull request Oct 11, 2024
apache#5682)

* add antlr4 based drl parser

* bump to drools 8.16.0.Beta

* improve node position discovery

* first c3 integration

* Module reorganization (#2)

* WIP

* Ignore directories

* Add debug. Minor modifications

* WIP

* Fix tests - add comments

* manage null ast nodes and fix failing test

* improve drl parser

* Fix basic completion (#4)

* Add Java grammar, fix DRL grammar, simplify token index calculation, remove template code

* Add ignored tokens to completion

Co-authored-by: livio <livio.bencik@mindsmiths.com>

* add constraints parsing

* - Added DRLParserWrapper to store errors using DRLErrorListener (#5)

- Added MiscDRLParserTest which is being ported from RuleParserTest to enhance coverage.

* Enhance test/grammar coverage. function import, global, exists, not (#6)

* Enhance test/grammar coverage. and, or, listExpression (#7)

* Enhance test/grammar coverage. matches, single quoted string, escape (#9)

- Introduced drlExpression, drlPrimary, drlLiteral, DRL_STRING_LITERAL

* Enhance test/grammar coverage. dialect, invalid lhs (apache#10)

* Enhance test/grammar coverage. keyword collision (apache#11)

- Add "DRL_" prefix for DRL keywords for clarification

* Enhance test/grammar coverage. function, attributes, consequence (apache#12)

* Enhance test/grammar coverage. function, attributes, consequence
- better getText preserving whitespaces
- resolving WARNs because of overlapping keywords

* - No need to declare duplicate keywords

* Enhance test/grammar coverage. OR, inline map (apache#13)

* OpenRewrite applied for junit5 and assertj (apache#14)

* Enhance test/grammar coverage. label, consequenceLocation, test refac… (apache#15)

* Enhance test/grammar coverage. label, consequenceLocation, test refactoring, assertj best practice

* - better test method names

* [DROOLS-7253] Review and improve drools-lsp parser Visitor design (apache#16)

* [DROOLS-7253] Review and improve drools-lsp parser Visitor design
- Remove currentConstructStack. Utilize return object instead.

* - Remove instance fields. Utilize return objects instead.

* [DROOLS-7270] Enhance test/grammar coverage : andRestriction, orRestriction (#4)

- Removed some unused cast

* [DROOLS-7271] Fully port RuleParserTest as MiscDRLParserTest with @disabled and priority comment (apache#10)

* [DROOLS-7285] Failed to parse and/or with parentheses in LHS (apache#15)

* [DROOLS-7286] Failed to parse binding with || (apache#21)

* [DROOLS-7287] Failed to parse comments in RHS (apache#23)

* [DROOLS-7287] Failed to parse comments in RHS

* - add rhs string check

* [DROOLS-7515] Parser : Accept plain text in RHS (apache#26)

* [DROOLS-7515] Parser : Accept plain text in RHS

* - Handle keyword token in RHS

* - Removed sysout

* - Revert statementKeywords. Instead, define DRL_END with newline or EOF

* - fix method name

* [DROOLS-7288] Failed to parse complex parentheses (apache#27)

* [DROOLS-7288] Failed to parse complex parentheses
- bump to 8.43.0.Final

* additional tests

* [DROOLS-7289] Implement accumulate (apache#28)

* [DROOLS-7296] Implement from entry-point (apache#30)

* [DROOLS-7297] Implement import accumulate (apache#29)

* [DROOLS-7290] Implement BigInteger literal, BigDecimal literal (apache#31)

* [DROOLS-7292] Implement eval (apache#32)

* [DROOLS-7293] Implement extends (apache#33)

* [DROOLS-7294] Implement forall (apache#34)

* [DROOLS-7298] Implement memberOf (apache#35)

* [DROOLS-7300] Implement positional constraint (apache#36)

* [DROOLS-7304] Implement temporal operators (apache#38)

- Also covers [DROOLS-7303] Implement sliding window

* [DROOLS-7301] Implement query (apache#37)

- Also partially fixes [DROOLS-7302] Implement semicolon delimiter

* [DROOLS-7295] Implement from collect (apache#39)

* [DROOLS-7305] Implement type declaration (apache#40)

- also covers [DROOLS-7291] Implement entry-point declaration
- also covers window declaration

* [DROOLS-7306] Implement unification (apache#41)

* [DROOLS-7306] Implement unification
- Also [DROOLS-7307] Parse attribute agenda-group

* [DROOLS-7308] Parse attribute without value
- Also [DROOLS-7309] Parse attribute with parentheses

* [DROOLS-7310] parse nested parentheses (apache#42)

* [DROOLS-7310] parse nested parentheses

* - Adding code commentes and explanations
- Adding more nested level tests

* [DROOLS-7577] drools-lsp : Add comments and explanations for drools-p… (apache#43)

* [DROOLS-7577] drools-lsp : Add comments and explanations for drools-parser

* removed syntax examples

* [DROOLS-7591] Experiment branch : migrate a new drools-lsp parser into drools (apache#44)

- Add some methods to call from drools code base

* Move necessary files without any additional modifications

* Update DRL6Expressions.g4 to ANTLR 4 (apache#47)

* Add DescrDumperTest and fix the expression parser grammar (apache#48)

* Add DescrDumperTest

* Fix it

* [DROOLS-7591] Experiment branch : migrate a new drools-lsp parser into drools
- New parser is migrated in drools-drl/drools-drl-parser with org.drools.drl10.parser package
- To enable the new parser, run `mvn test -PDRL10`
- At the moment, we get lots of test failures especially in drools-model/drools-model-codegen and drools-test-coverage/test-compiler-integration

* - License header
- Revert an inappropriate test edit
- Removed unnecessary profile
- Clarify unsupported methods
- Removed unnecessary bom dependency

---------

Co-authored-by: mariofusco <mario.fusco@gmail.com>
Co-authored-by: Gabriele Cardosi <gabriele.cardosi@gmail.com>
Co-authored-by: Livio Benčik <lbenc135@gmail.com>
Co-authored-by: livio <livio.bencik@mindsmiths.com>
Co-authored-by: Jiří Locker <jiri.locker@gmail.com>
tkobayas added a commit that referenced this pull request Oct 11, 2024
- Added MiscDRLParserTest which is being ported from RuleParserTest to enhance coverage.
tkobayas pushed a commit that referenced this pull request Nov 25, 2024
… (apache#6168)

* Migrated tests to JUnit5

* More tests migrated

* Migrated tests to Junit5

* Migrated more tests

* Migrated test suite to JUnit5

* More tests moved to JUnit5
tkobayas added a commit that referenced this pull request Dec 10, 2024
apache#5682)

* add antlr4 based drl parser

* bump to drools 8.16.0.Beta

* improve node position discovery

* first c3 integration

* Module reorganization (#2)

* WIP

* Ignore directories

* Add debug. Minor modifications

* WIP

* Fix tests - add comments

* manage null ast nodes and fix failing test

* improve drl parser

* Fix basic completion (#4)

* Add Java grammar, fix DRL grammar, simplify token index calculation, remove template code

* Add ignored tokens to completion

Co-authored-by: livio <livio.bencik@mindsmiths.com>

* add constraints parsing

* - Added DRLParserWrapper to store errors using DRLErrorListener (#5)

- Added MiscDRLParserTest which is being ported from RuleParserTest to enhance coverage.

* Enhance test/grammar coverage. function import, global, exists, not (#6)

* Enhance test/grammar coverage. and, or, listExpression (#7)

* Enhance test/grammar coverage. matches, single quoted string, escape (#9)

- Introduced drlExpression, drlPrimary, drlLiteral, DRL_STRING_LITERAL

* Enhance test/grammar coverage. dialect, invalid lhs (apache#10)

* Enhance test/grammar coverage. keyword collision (apache#11)

- Add "DRL_" prefix for DRL keywords for clarification

* Enhance test/grammar coverage. function, attributes, consequence (apache#12)

* Enhance test/grammar coverage. function, attributes, consequence
- better getText preserving whitespaces
- resolving WARNs because of overlapping keywords

* - No need to declare duplicate keywords

* Enhance test/grammar coverage. OR, inline map (apache#13)

* OpenRewrite applied for junit5 and assertj (apache#14)

* Enhance test/grammar coverage. label, consequenceLocation, test refac… (apache#15)

* Enhance test/grammar coverage. label, consequenceLocation, test refactoring, assertj best practice

* - better test method names

* [DROOLS-7253] Review and improve drools-lsp parser Visitor design (apache#16)

* [DROOLS-7253] Review and improve drools-lsp parser Visitor design
- Remove currentConstructStack. Utilize return object instead.

* - Remove instance fields. Utilize return objects instead.

* [DROOLS-7270] Enhance test/grammar coverage : andRestriction, orRestriction (#4)

- Removed some unused cast

* [DROOLS-7271] Fully port RuleParserTest as MiscDRLParserTest with @disabled and priority comment (apache#10)

* [DROOLS-7285] Failed to parse and/or with parentheses in LHS (apache#15)

* [DROOLS-7286] Failed to parse binding with || (apache#21)

* [DROOLS-7287] Failed to parse comments in RHS (apache#23)

* [DROOLS-7287] Failed to parse comments in RHS

* - add rhs string check

* [DROOLS-7515] Parser : Accept plain text in RHS (apache#26)

* [DROOLS-7515] Parser : Accept plain text in RHS

* - Handle keyword token in RHS

* - Removed sysout

* - Revert statementKeywords. Instead, define DRL_END with newline or EOF

* - fix method name

* [DROOLS-7288] Failed to parse complex parentheses (apache#27)

* [DROOLS-7288] Failed to parse complex parentheses
- bump to 8.43.0.Final

* additional tests

* [DROOLS-7289] Implement accumulate (apache#28)

* [DROOLS-7296] Implement from entry-point (apache#30)

* [DROOLS-7297] Implement import accumulate (apache#29)

* [DROOLS-7290] Implement BigInteger literal, BigDecimal literal (apache#31)

* [DROOLS-7292] Implement eval (apache#32)

* [DROOLS-7293] Implement extends (apache#33)

* [DROOLS-7294] Implement forall (apache#34)

* [DROOLS-7298] Implement memberOf (apache#35)

* [DROOLS-7300] Implement positional constraint (apache#36)

* [DROOLS-7304] Implement temporal operators (apache#38)

- Also covers [DROOLS-7303] Implement sliding window

* [DROOLS-7301] Implement query (apache#37)

- Also partially fixes [DROOLS-7302] Implement semicolon delimiter

* [DROOLS-7295] Implement from collect (apache#39)

* [DROOLS-7305] Implement type declaration (apache#40)

- also covers [DROOLS-7291] Implement entry-point declaration
- also covers window declaration

* [DROOLS-7306] Implement unification (apache#41)

* [DROOLS-7306] Implement unification
- Also [DROOLS-7307] Parse attribute agenda-group

* [DROOLS-7308] Parse attribute without value
- Also [DROOLS-7309] Parse attribute with parentheses

* [DROOLS-7310] parse nested parentheses (apache#42)

* [DROOLS-7310] parse nested parentheses

* - Adding code commentes and explanations
- Adding more nested level tests

* [DROOLS-7577] drools-lsp : Add comments and explanations for drools-p… (apache#43)

* [DROOLS-7577] drools-lsp : Add comments and explanations for drools-parser

* removed syntax examples

* [DROOLS-7591] Experiment branch : migrate a new drools-lsp parser into drools (apache#44)

- Add some methods to call from drools code base

* Move necessary files without any additional modifications

* Update DRL6Expressions.g4 to ANTLR 4 (apache#47)

* Add DescrDumperTest and fix the expression parser grammar (apache#48)

* Add DescrDumperTest

* Fix it

* [DROOLS-7591] Experiment branch : migrate a new drools-lsp parser into drools
- New parser is migrated in drools-drl/drools-drl-parser with org.drools.drl10.parser package
- To enable the new parser, run `mvn test -PDRL10`
- At the moment, we get lots of test failures especially in drools-model/drools-model-codegen and drools-test-coverage/test-compiler-integration

* - License header
- Revert an inappropriate test edit
- Removed unnecessary profile
- Clarify unsupported methods
- Removed unnecessary bom dependency

---------

Co-authored-by: mariofusco <mario.fusco@gmail.com>
Co-authored-by: Gabriele Cardosi <gabriele.cardosi@gmail.com>
Co-authored-by: Livio Benčik <lbenc135@gmail.com>
Co-authored-by: livio <livio.bencik@mindsmiths.com>
Co-authored-by: Jiří Locker <jiri.locker@gmail.com>
tkobayas added a commit that referenced this pull request Dec 10, 2024
- Added MiscDRLParserTest which is being ported from RuleParserTest to enhance coverage.
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