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

Bugfix 549 #682

Merged
merged 25 commits into from
Jan 24, 2024
Merged

Bugfix 549 #682

merged 25 commits into from
Jan 24, 2024

Conversation

ThisMatt
Copy link
Collaborator

@ThisMatt ThisMatt commented Nov 7, 2023

Description

Allows direct rule transitions that have no changes to be considered valid.
Prevents modification of board elements that would affect existing future case rules.

Specifics:

  • model/rules/DirectRule.java
    • Adds a case allowing transitions with no modified data
  • model/tree/TreeTransition.java.propogateChange()
    • Propagation now updates modified data arrays of child transitions
    • Other minor fixes
  • model/rules/CaseRule.java
    • Added function dependentElements(), which specifies elements to be made unmodifiable
      • Added default implementation and overrides for case rules I thought needed them
  • model/gameboard/PuzzleElement.java
    • Added .caseDepended attribute, which counts the number of case rules depending on this element
  • model/tree/TreeTransition.java
    • Added .selection attribute, which, for case rule transitions, tracks the selected puzzle element
      • This is neccessary to call dependentElements() given only a transition
      • Side Note: this should help in streamlining checkRule() implementations for case rules
        • Replaced skyscrapers-specific implementation of this idea with the new attribute
          • CellForNumberCaseRule.java, SkyscrapersClue.java, SkyscrapersBoard.java
  • history/AutoCaseRuleCommand.java
    • Set selection attribute of the created transitions
  • proofeditorui/treeview/TreeView.java
    • Added code to update casesDepended for all puzzleElements in the tree whenever:
      • The first transition of a case rule is added
      • The last transition of a case rule is removed
      • A node containing a case rule is added
      • A node containing a case rule is removed
    • If the Case has been added
      • All dependentElements in all ancestors are incremented and set to unmodifiable
    • If the Case has been removed
      • All dependentElements in all ancestors are decremented
      • If dependentElements is now 0, sets modifiability to what it should be:
        • Modifiable if started modifiable and not modified by any ancestors

Closes #(549)

Type of change

  • [x ] Bug fix (non-breaking change which fixes an issue)
  • New feature (non-breaking change which adds functionality)
  • Enhancement (improvement to an already existing feature)
  • Breaking change (fix or feature that would cause existing functionality to not work as expected)

How Has This Been Tested?

Test using Lightup.SatisfyNumber Case Rule:

  1. Open 7x7 Easy 69495
  2. Apply Finish With Empty to the top-left 0
  1. Edit this transition, and notice that when removing all changes, the transition is still valid
  1. Apply case rule to the left-most 2. Note that transition 2 cannot be modified anywhere placing a light would light up a square adjacent to the left-most 2, invalidating a case. (empty placed where possible in this screenshot)
  1. From the node shown after transition 4, call Finish With Empty again, filling in the spots now unmodifiable by transition 2. Note that all cells not previously modified are modifiable.
  1. From node 5, Apply case rule to the 2 diagonal to the previous. Note that transition 5 is unmodifiable where placing a light would affect the new 2, and transition 2 cannot be modified where it would affect either 2. (light placed where possible in these screenshots)
  1. Delete each transition after node 5 individually. Note that modifiability remains the same until the final transition is deleted, at which point we return to the state after step 5.
  1. Undo these deletions. Note that after the first undo, modifiability returns to the state after step 6.
  2. Delete node 2. Note modifiability of transition 2 is the same after step 2.
  1. Undo this deletion. Note modifiability returns to the state after step 6.

Checklist:

  • [x ] I have performed a self-review of my code
  • I have commented my code, particularly in hard-to-understand areas
  • I have made corresponding changes to the documentation (if applicable)
  • My changes generate no new warnings
  • I have added tests that prove my fix is effective or that my feature works
  • New and existing unit tests pass locally with my changes

@charlestian23
Copy link
Collaborator

@ThisMatt Can you resolve the merge conflicts? I'll review it once you've done that.

@ThisMatt ThisMatt requested review from Corppet and removed request for Chase-Grajeda November 7, 2023 21:38
for (Board caseBoard : cases) {
Set<PuzzleElement> data = caseBoard.getModifiedData();
for (PuzzleElement element : data) {
if(!elements.contains(board.getPuzzleElement(element))){
Copy link
Collaborator

Choose a reason for hiding this comment

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

Your code still has inconsistent spacing (this comment is only the surface of formatting issues).

@charlestian23
Copy link
Collaborator

I will get around to this after the Thanksgiving break. Also going to request for Chase to review this too, since this seems like a decently substantial change.

@charlestian23 charlestian23 mentioned this pull request Dec 13, 2023
10 tasks
Copy link
Collaborator

@charlestian23 charlestian23 left a comment

Choose a reason for hiding this comment

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

Looks good.

@charlestian23 charlestian23 dismissed Corppet’s stale review January 24, 2024 16:49

Formatting is fine for now, we'll fix in a later pull request since we need to get a new version release.

@charlestian23 charlestian23 merged commit 5048ee6 into Bram-Hub:dev Jan 24, 2024
5 checks passed
Chase-Grajeda added a commit that referenced this pull request Jan 26, 2024
This reverts commit 5048ee6.
charlestian23 added a commit to charlestian23/LEGUP that referenced this pull request Jan 26, 2024
@charlestian23 charlestian23 mentioned this pull request Jan 26, 2024
10 tasks
charlestian23 added a commit that referenced this pull request Jan 26, 2024
charlestian23 added a commit that referenced this pull request Jan 26, 2024
* Revert "Bugfix 549 (#682)"

This reverts commit 5048ee6.

* Case rule test fix (#705)

Co-authored-by: Chase Grajeda <76405306+Chase-Grajeda@users.noreply.github.com>

* Rapid fix for STT case rules

Case rules broke at some point from legacy code or merge conflict. Provided is a quick fix in CaseRule and CaseRule_Generic

* Revert "Revert "Bugfix 549 (#682)"" (#706)

This reverts commit e9fe310.

---------

Co-authored-by: Chase-Grajeda <chase.grajeda@gmail.com>
Co-authored-by: Chase Grajeda <76405306+Chase-Grajeda@users.noreply.github.com>
charlestian23 added a commit that referenced this pull request Feb 7, 2024
* Fixed Short Truth Table case rule bug (#707)

* Revert "Bugfix 549 (#682)"

This reverts commit 5048ee6.

* Case rule test fix (#705)

Co-authored-by: Chase Grajeda <76405306+Chase-Grajeda@users.noreply.github.com>

* Rapid fix for STT case rules

Case rules broke at some point from legacy code or merge conflict. Provided is a quick fix in CaseRule and CaseRule_Generic

* Revert "Revert "Bugfix 549 (#682)"" (#706)

This reverts commit e9fe310.

---------

Co-authored-by: Chase-Grajeda <chase.grajeda@gmail.com>
Co-authored-by: Chase Grajeda <76405306+Chase-Grajeda@users.noreply.github.com>

* Implementing Puzzle Editor

Removing Extraneous TreeTent Code
Allowing setting tile number

* Allow for editing clues on all axies

* Remove Extraneous Code

Removed functionality required for TreeTent but unnecessary for Skyscrapers

* Remove Extraneous Code

* Clue Tile in Editor

Editor now requires selecting the clue tile to edit clues
Added images for the tiles

* Merge branch 'dev' into skyscrapersPuzzleEditor

* Checkstyle Requirement

* Necessary Code

* Allow for test functionality

---------

Co-authored-by: Charles Tian <46334090+charlestian23@users.noreply.github.com>
Co-authored-by: Chase-Grajeda <chase.grajeda@gmail.com>
Co-authored-by: Chase Grajeda <76405306+Chase-Grajeda@users.noreply.github.com>
charlestian23 added a commit that referenced this pull request Feb 21, 2024
* Fixed Short Truth Table case rule bug (#707)

* Revert "Bugfix 549 (#682)"

This reverts commit 5048ee6.

* Case rule test fix (#705)

Co-authored-by: Chase Grajeda <76405306+Chase-Grajeda@users.noreply.github.com>

* Rapid fix for STT case rules

Case rules broke at some point from legacy code or merge conflict. Provided is a quick fix in CaseRule and CaseRule_Generic

* Revert "Revert "Bugfix 549 (#682)"" (#706)

This reverts commit e9fe310.

---------

Co-authored-by: Chase-Grajeda <chase.grajeda@gmail.com>
Co-authored-by: Chase Grajeda <76405306+Chase-Grajeda@users.noreply.github.com>

* Change Java version to 21 and setup JPackage to bundle Java with the app

* Setup gradle action for java 21

* Fix distribution in gradle.yml

* Fix java version in tests

* Fix java distribution in tests

* Add jpackage task

* Add Linux to jpackage task

* Fix jpackage task

* Add java setup to jpackage tasks

* Separate build into separate tasks for different operating systems

* Fix mac jpackage not working and changed names of artifacts

* Potential macos installer build fix

* Potential macos installer build fix attempt 2

* Potential macos installer build fix attempt 3

* Add quotes around executable name for macos installer

* Add logo and shortcut prompt

* Update version in build.gradle

* Make installer name different to app (It's a weird way to do it, it renames the file in a gradle task).

* Update java-autoformat.yml

Added check to make sure the pull request is not from a fork

---------

Co-authored-by: Charles Tian <46334090+charlestian23@users.noreply.github.com>
Co-authored-by: Chase-Grajeda <chase.grajeda@gmail.com>
Co-authored-by: Chase Grajeda <76405306+Chase-Grajeda@users.noreply.github.com>
Co-authored-by: charlestian23 <charles.tian23@gmail.com>
Fuzzabee added a commit that referenced this pull request Feb 27, 2024
* Fixed Short Truth Table case rule bug (#707)

* Revert "Bugfix 549 (#682)"

This reverts commit 5048ee6.

* Case rule test fix (#705)

Co-authored-by: Chase Grajeda <76405306+Chase-Grajeda@users.noreply.github.com>

* Rapid fix for STT case rules

Case rules broke at some point from legacy code or merge conflict. Provided is a quick fix in CaseRule and CaseRule_Generic

* Revert "Revert "Bugfix 549 (#682)"" (#706)

This reverts commit e9fe310.

---------

Co-authored-by: Chase-Grajeda <chase.grajeda@gmail.com>
Co-authored-by: Chase Grajeda <76405306+Chase-Grajeda@users.noreply.github.com>

* Starting work on thermometer class

* Added Vial Class

Added the vial class which will be helpful for checking rules down the line

* Discontinuous Mercury Rule added

Added the Discontinuous Mercury contradiciton rule. Added variables to the ThermometerBoard class to keep track of the numbers on the perimiter of the board as well as accessors/setters for these variables. Rewrote a section of the Vials code to make sure cells are added correctly as well as added some accessor functions.

---------

Co-authored-by: Charles Tian <46334090+charlestian23@users.noreply.github.com>
Co-authored-by: Chase-Grajeda <chase.grajeda@gmail.com>
Co-authored-by: Chase Grajeda <76405306+Chase-Grajeda@users.noreply.github.com>
Co-authored-by: Fuzzabee <63023750+Fuzzabee@users.noreply.github.com>
ZevCe pushed a commit that referenced this pull request Feb 27, 2024
* Fixed Short Truth Table case rule bug (#707)

* Revert "Bugfix 549 (#682)"

This reverts commit 5048ee6.

* Case rule test fix (#705)

Co-authored-by: Chase Grajeda <76405306+Chase-Grajeda@users.noreply.github.com>

* Rapid fix for STT case rules

Case rules broke at some point from legacy code or merge conflict. Provided is a quick fix in CaseRule and CaseRule_Generic

* Revert "Revert "Bugfix 549 (#682)"" (#706)

This reverts commit e9fe310.

---------

Co-authored-by: Chase-Grajeda <chase.grajeda@gmail.com>
Co-authored-by: Chase Grajeda <76405306+Chase-Grajeda@users.noreply.github.com>

* Skyscrapers Test Suite (#708)

* Simplify rule names

* Contradiction Test Suite

* checkstyle

* Update Exporter

* Revert "Update Exporter"

This reverts commit bae1a1f.

* Case Rule Test Suite

* Update SkyscrapersExporter.java

* allow null transitions

* Update TreeTransition.java

* Direct Rule Test Suite

* added tests pass

* Update DirectRule.java

Commenting out print statement

---------

Co-authored-by: ThisMatt <popem@rpi.edu>
Co-authored-by: ThisMatt <98851950+ThisMatt@users.noreply.github.com>
Co-authored-by: Chase Grajeda <76405306+Chase-Grajeda@users.noreply.github.com>

* Update ThermometerBoard.java

* Skyscrapers puzzle editor (#720)

* Fixed Short Truth Table case rule bug (#707)

* Revert "Bugfix 549 (#682)"

This reverts commit 5048ee6.

* Case rule test fix (#705)

Co-authored-by: Chase Grajeda <76405306+Chase-Grajeda@users.noreply.github.com>

* Rapid fix for STT case rules

Case rules broke at some point from legacy code or merge conflict. Provided is a quick fix in CaseRule and CaseRule_Generic

* Revert "Revert "Bugfix 549 (#682)"" (#706)

This reverts commit e9fe310.

---------

Co-authored-by: Chase-Grajeda <chase.grajeda@gmail.com>
Co-authored-by: Chase Grajeda <76405306+Chase-Grajeda@users.noreply.github.com>

* Implementing Puzzle Editor

Removing Extraneous TreeTent Code
Allowing setting tile number

* Allow for editing clues on all axies

* Remove Extraneous Code

Removed functionality required for TreeTent but unnecessary for Skyscrapers

* Remove Extraneous Code

* Clue Tile in Editor

Editor now requires selecting the clue tile to edit clues
Added images for the tiles

* Merge branch 'dev' into skyscrapersPuzzleEditor

* Checkstyle Requirement

* Necessary Code

* Allow for test functionality

---------

Co-authored-by: Charles Tian <46334090+charlestian23@users.noreply.github.com>
Co-authored-by: Chase-Grajeda <chase.grajeda@gmail.com>
Co-authored-by: Chase Grajeda <76405306+Chase-Grajeda@users.noreply.github.com>

* Created element files

* Element/rule images

* Java Autoformatter (#728)

* Create java-autoformat.yml

* Setup Java

* Run spotless on repository

* Adding spotless dependency during build

* Adding spotless dependency during build

* Give permissions to run spotless

* Syntax

* Adding Debug Tag

* Check for modified files

Also removed debug tag

* Automated Java code formatting changes

* Test command syntax

* Correctly Identify modified files

* Test autoformatter

* Test autoformatter

* Test autoformatter

* Debugging

* Debugging

* Change method for detecting changed files

* Try building before calling spotless

* Update java-autoformat.yml

* Update java-autoformat.yml

* Update java-autoformat.yml

* Purposely bad formatting

Purposely adding some bad formatting to see if the auto-formatter triggers

* Update build.gradle

Disabling Checkstyle in build so the auto-formatter can trigger

* Update java-autoformat.yml

Have auto-formatter trigger when more commits are added to a pull request

* Debugging

* Adding more awful formatting

* Update java-autoformat.yml

* Changing repo URL

* Going back to checkout v1

* Trying URL change

* Trying out using env

* Trying this now...?

* Introducing more horrible changes

* Spotless formatting using google format v1.19.2

* Manual formatting fix

* Automated Java code formatting changes

* Different format type

Trying to get it to pass checkstyle

* Disable checkstyle temporarily

* Automated Java code formatting changes

* Default google formatting style

* Automated Java code formatting changes

* Comments and reordering styles

* Adding extra newlines

* Automated Java code formatting changes

* Changing tabs from 2 to 4 spaces

Supposedly the only difference that aosp makes is the 2 spaces?
Hopefully it doesn't break anything else

* Remove solo } requirement and reactivate checkstyle

* Automated Java code formatting changes

* Update checkstyle.xml

Removed problematic LeftCurly and RightCurly requirements

* Changing back to tabWidth

* Add newline to test formatter + build

* Automated Java code formatting changes

* Trying some ChatGPT stuff

* Getting rid of problematic experimentation

---------

Co-authored-by: Bram van Heuveln <bram28@users.noreply.github.com>
Co-authored-by: Charles Tian <46334090+charlestian23@users.noreply.github.com>
Co-authored-by: charlestian23 <charles.tian23@gmail.com>

* Java21 (#714)

* Fixed Short Truth Table case rule bug (#707)

* Revert "Bugfix 549 (#682)"

This reverts commit 5048ee6.

* Case rule test fix (#705)

Co-authored-by: Chase Grajeda <76405306+Chase-Grajeda@users.noreply.github.com>

* Rapid fix for STT case rules

Case rules broke at some point from legacy code or merge conflict. Provided is a quick fix in CaseRule and CaseRule_Generic

* Revert "Revert "Bugfix 549 (#682)"" (#706)

This reverts commit e9fe310.

---------

Co-authored-by: Chase-Grajeda <chase.grajeda@gmail.com>
Co-authored-by: Chase Grajeda <76405306+Chase-Grajeda@users.noreply.github.com>

* Change Java version to 21 and setup JPackage to bundle Java with the app

* Setup gradle action for java 21

* Fix distribution in gradle.yml

* Fix java version in tests

* Fix java distribution in tests

* Add jpackage task

* Add Linux to jpackage task

* Fix jpackage task

* Add java setup to jpackage tasks

* Separate build into separate tasks for different operating systems

* Fix mac jpackage not working and changed names of artifacts

* Potential macos installer build fix

* Potential macos installer build fix attempt 2

* Potential macos installer build fix attempt 3

* Add quotes around executable name for macos installer

* Add logo and shortcut prompt

* Update version in build.gradle

* Make installer name different to app (It's a weird way to do it, it renames the file in a gradle task).

* Update java-autoformat.yml

Added check to make sure the pull request is not from a fork

---------

Co-authored-by: Charles Tian <46334090+charlestian23@users.noreply.github.com>
Co-authored-by: Chase-Grajeda <chase.grajeda@gmail.com>
Co-authored-by: Chase Grajeda <76405306+Chase-Grajeda@users.noreply.github.com>
Co-authored-by: charlestian23 <charles.tian23@gmail.com>

* Update build.gradle (#741)

* Update build.gradle

Fixing the deprecation issues in the autoformatter

* Update build.gradle

* Update build.gradle

* Update to use Java 21

* Automated Java code formatting changes

---------

Co-authored-by: Bram van Heuveln <bram28@users.noreply.github.com>

* Updating to version 6.0.0

Changing to 6.0.0 since Java upgrade may break backwards compatibility

* Too many mercury 1st draft

* Too few mercury contradiction rule

* error fixes

---------

Co-authored-by: Charles Tian <46334090+charlestian23@users.noreply.github.com>
Co-authored-by: Chase-Grajeda <chase.grajeda@gmail.com>
Co-authored-by: Chase Grajeda <76405306+Chase-Grajeda@users.noreply.github.com>
Co-authored-by: ThisMatt <popem@rpi.edu>
Co-authored-by: ThisMatt <98851950+ThisMatt@users.noreply.github.com>
Co-authored-by: Jaden Tian <56417002+jadeandtea@users.noreply.github.com>
Co-authored-by: Bram van Heuveln <bram28@users.noreply.github.com>
Co-authored-by: charlestian23 <charles.tian23@gmail.com>
Co-authored-by: Fisher Luba <145061313+FisherLuba@users.noreply.github.com>
Fuzzabee added a commit that referenced this pull request Mar 12, 2024
* Fixed Short Truth Table case rule bug (#707)

* Revert "Bugfix 549 (#682)"

This reverts commit 5048ee6.

* Case rule test fix (#705)

Co-authored-by: Chase Grajeda <76405306+Chase-Grajeda@users.noreply.github.com>

* Rapid fix for STT case rules

Case rules broke at some point from legacy code or merge conflict. Provided is a quick fix in CaseRule and CaseRule_Generic

* Revert "Revert "Bugfix 549 (#682)"" (#706)

This reverts commit e9fe310.

---------

Co-authored-by: Chase-Grajeda <chase.grajeda@gmail.com>
Co-authored-by: Chase Grajeda <76405306+Chase-Grajeda@users.noreply.github.com>

* Starting work on thermometer class

* Added Vial Class

Added the vial class which will be helpful for checking rules down the line

* Discontinuous Mercury Rule added

Added the Discontinuous Mercury contradiciton rule. Added variables to the ThermometerBoard class to keep track of the numbers on the perimiter of the board as well as accessors/setters for these variables. Rewrote a section of the Vials code to make sure cells are added correctly as well as added some accessor functions.

* Importer written

First draft of the importer written and setData refactored

* small bug fixes

* Added Puzzle Factory and Importer

Refactored a bunch of code so we now (in theory) import correctly

---------

Co-authored-by: Charles Tian <46334090+charlestian23@users.noreply.github.com>
Co-authored-by: Chase-Grajeda <chase.grajeda@gmail.com>
Co-authored-by: Chase Grajeda <76405306+Chase-Grajeda@users.noreply.github.com>
Co-authored-by: Fuzzabee <63023750+Fuzzabee@users.noreply.github.com>
Fuzzabee added a commit to Fuzzabee/LEGUP that referenced this pull request Mar 14, 2024
…-Hub#756) (#1)

* Fixed Short Truth Table case rule bug (Bram-Hub#707)

* Revert "Bugfix 549 (Bram-Hub#682)"

This reverts commit 5048ee6.

* Case rule test fix (Bram-Hub#705)



* Rapid fix for STT case rules

Case rules broke at some point from legacy code or merge conflict. Provided is a quick fix in CaseRule and CaseRule_Generic

* Revert "Revert "Bugfix 549 (Bram-Hub#682)"" (Bram-Hub#706)

This reverts commit e9fe310.

---------




* Starting work on thermometer class

* Added Vial Class

Added the vial class which will be helpful for checking rules down the line

* Discontinuous Mercury Rule added

Added the Discontinuous Mercury contradiciton rule. Added variables to the ThermometerBoard class to keep track of the numbers on the perimiter of the board as well as accessors/setters for these variables. Rewrote a section of the Vials code to make sure cells are added correctly as well as added some accessor functions.

* Importer written

First draft of the importer written and setData refactored

* small bug fixes

* Added Puzzle Factory and Importer

Refactored a bunch of code so we now (in theory) import correctly

---------

Co-authored-by: ZevCe <157339070+ZevCe@users.noreply.github.com>
Co-authored-by: Charles Tian <46334090+charlestian23@users.noreply.github.com>
Co-authored-by: Chase-Grajeda <chase.grajeda@gmail.com>
Co-authored-by: Chase Grajeda <76405306+Chase-Grajeda@users.noreply.github.com>
ZevCe added a commit that referenced this pull request Mar 14, 2024
* Thermometer Importer Functionality + Thermometer Puzzle Factory (#756) (#1)

* Fixed Short Truth Table case rule bug (#707)

* Revert "Bugfix 549 (#682)"

This reverts commit 5048ee6.

* Case rule test fix (#705)



* Rapid fix for STT case rules

Case rules broke at some point from legacy code or merge conflict. Provided is a quick fix in CaseRule and CaseRule_Generic

* Revert "Revert "Bugfix 549 (#682)"" (#706)

This reverts commit e9fe310.

---------




* Starting work on thermometer class

* Added Vial Class

Added the vial class which will be helpful for checking rules down the line

* Discontinuous Mercury Rule added

Added the Discontinuous Mercury contradiciton rule. Added variables to the ThermometerBoard class to keep track of the numbers on the perimiter of the board as well as accessors/setters for these variables. Rewrote a section of the Vials code to make sure cells are added correctly as well as added some accessor functions.

* Importer written

First draft of the importer written and setData refactored

* small bug fixes

* Added Puzzle Factory and Importer

Refactored a bunch of code so we now (in theory) import correctly

---------

Co-authored-by: ZevCe <157339070+ZevCe@users.noreply.github.com>
Co-authored-by: Charles Tian <46334090+charlestian23@users.noreply.github.com>
Co-authored-by: Chase-Grajeda <chase.grajeda@gmail.com>
Co-authored-by: Chase Grajeda <76405306+Chase-Grajeda@users.noreply.github.com>

* Update ThermometerExporter.java

* Git issues, trying to fix

---------

Co-authored-by: ZevCe <157339070+ZevCe@users.noreply.github.com>
Co-authored-by: Charles Tian <46334090+charlestian23@users.noreply.github.com>
Co-authored-by: Chase-Grajeda <chase.grajeda@gmail.com>
Co-authored-by: Chase Grajeda <76405306+Chase-Grajeda@users.noreply.github.com>
ZevCe added a commit that referenced this pull request Mar 15, 2024
* Fixed Short Truth Table case rule bug (#707)

* Revert "Bugfix 549 (#682)"

This reverts commit 5048ee6.

* Case rule test fix (#705)

Co-authored-by: Chase Grajeda <76405306+Chase-Grajeda@users.noreply.github.com>

* Rapid fix for STT case rules

Case rules broke at some point from legacy code or merge conflict. Provided is a quick fix in CaseRule and CaseRule_Generic

* Revert "Revert "Bugfix 549 (#682)"" (#706)

This reverts commit e9fe310.

---------

Co-authored-by: Chase-Grajeda <chase.grajeda@gmail.com>
Co-authored-by: Chase Grajeda <76405306+Chase-Grajeda@users.noreply.github.com>

* Skyscrapers Test Suite (#708)

* Simplify rule names

* Contradiction Test Suite

* checkstyle

* Update Exporter

* Revert "Update Exporter"

This reverts commit bae1a1f.

* Case Rule Test Suite

* Update SkyscrapersExporter.java

* allow null transitions

* Update TreeTransition.java

* Direct Rule Test Suite

* added tests pass

* Update DirectRule.java

Commenting out print statement

---------

Co-authored-by: ThisMatt <popem@rpi.edu>
Co-authored-by: ThisMatt <98851950+ThisMatt@users.noreply.github.com>
Co-authored-by: Chase Grajeda <76405306+Chase-Grajeda@users.noreply.github.com>

* Skyscrapers puzzle editor (#720)

* Fixed Short Truth Table case rule bug (#707)

* Revert "Bugfix 549 (#682)"

This reverts commit 5048ee6.

* Case rule test fix (#705)

Co-authored-by: Chase Grajeda <76405306+Chase-Grajeda@users.noreply.github.com>

* Rapid fix for STT case rules

Case rules broke at some point from legacy code or merge conflict. Provided is a quick fix in CaseRule and CaseRule_Generic

* Revert "Revert "Bugfix 549 (#682)"" (#706)

This reverts commit e9fe310.

---------

Co-authored-by: Chase-Grajeda <chase.grajeda@gmail.com>
Co-authored-by: Chase Grajeda <76405306+Chase-Grajeda@users.noreply.github.com>

* Implementing Puzzle Editor

Removing Extraneous TreeTent Code
Allowing setting tile number

* Allow for editing clues on all axies

* Remove Extraneous Code

Removed functionality required for TreeTent but unnecessary for Skyscrapers

* Remove Extraneous Code

* Clue Tile in Editor

Editor now requires selecting the clue tile to edit clues
Added images for the tiles

* Merge branch 'dev' into skyscrapersPuzzleEditor

* Checkstyle Requirement

* Necessary Code

* Allow for test functionality

---------

Co-authored-by: Charles Tian <46334090+charlestian23@users.noreply.github.com>
Co-authored-by: Chase-Grajeda <chase.grajeda@gmail.com>
Co-authored-by: Chase Grajeda <76405306+Chase-Grajeda@users.noreply.github.com>

* Starting work on thermometer class

* Added Vial Class

Added the vial class which will be helpful for checking rules down the line

* Discontinuous Mercury Rule added

Added the Discontinuous Mercury contradiciton rule. Added variables to the ThermometerBoard class to keep track of the numbers on the perimiter of the board as well as accessors/setters for these variables. Rewrote a section of the Vials code to make sure cells are added correctly as well as added some accessor functions.

* Java Autoformatter (#728)

* Create java-autoformat.yml

* Setup Java

* Run spotless on repository

* Adding spotless dependency during build

* Adding spotless dependency during build

* Give permissions to run spotless

* Syntax

* Adding Debug Tag

* Check for modified files

Also removed debug tag

* Automated Java code formatting changes

* Test command syntax

* Correctly Identify modified files

* Test autoformatter

* Test autoformatter

* Test autoformatter

* Debugging

* Debugging

* Change method for detecting changed files

* Try building before calling spotless

* Update java-autoformat.yml

* Update java-autoformat.yml

* Update java-autoformat.yml

* Purposely bad formatting

Purposely adding some bad formatting to see if the auto-formatter triggers

* Update build.gradle

Disabling Checkstyle in build so the auto-formatter can trigger

* Update java-autoformat.yml

Have auto-formatter trigger when more commits are added to a pull request

* Debugging

* Adding more awful formatting

* Update java-autoformat.yml

* Changing repo URL

* Going back to checkout v1

* Trying URL change

* Trying out using env

* Trying this now...?

* Introducing more horrible changes

* Spotless formatting using google format v1.19.2

* Manual formatting fix

* Automated Java code formatting changes

* Different format type

Trying to get it to pass checkstyle

* Disable checkstyle temporarily

* Automated Java code formatting changes

* Default google formatting style

* Automated Java code formatting changes

* Comments and reordering styles

* Adding extra newlines

* Automated Java code formatting changes

* Changing tabs from 2 to 4 spaces

Supposedly the only difference that aosp makes is the 2 spaces?
Hopefully it doesn't break anything else

* Remove solo } requirement and reactivate checkstyle

* Automated Java code formatting changes

* Update checkstyle.xml

Removed problematic LeftCurly and RightCurly requirements

* Changing back to tabWidth

* Add newline to test formatter + build

* Automated Java code formatting changes

* Trying some ChatGPT stuff

* Getting rid of problematic experimentation

---------

Co-authored-by: Bram van Heuveln <bram28@users.noreply.github.com>
Co-authored-by: Charles Tian <46334090+charlestian23@users.noreply.github.com>
Co-authored-by: charlestian23 <charles.tian23@gmail.com>

* Java21 (#714)

* Fixed Short Truth Table case rule bug (#707)

* Revert "Bugfix 549 (#682)"

This reverts commit 5048ee6.

* Case rule test fix (#705)

Co-authored-by: Chase Grajeda <76405306+Chase-Grajeda@users.noreply.github.com>

* Rapid fix for STT case rules

Case rules broke at some point from legacy code or merge conflict. Provided is a quick fix in CaseRule and CaseRule_Generic

* Revert "Revert "Bugfix 549 (#682)"" (#706)

This reverts commit e9fe310.

---------

Co-authored-by: Chase-Grajeda <chase.grajeda@gmail.com>
Co-authored-by: Chase Grajeda <76405306+Chase-Grajeda@users.noreply.github.com>

* Change Java version to 21 and setup JPackage to bundle Java with the app

* Setup gradle action for java 21

* Fix distribution in gradle.yml

* Fix java version in tests

* Fix java distribution in tests

* Add jpackage task

* Add Linux to jpackage task

* Fix jpackage task

* Add java setup to jpackage tasks

* Separate build into separate tasks for different operating systems

* Fix mac jpackage not working and changed names of artifacts

* Potential macos installer build fix

* Potential macos installer build fix attempt 2

* Potential macos installer build fix attempt 3

* Add quotes around executable name for macos installer

* Add logo and shortcut prompt

* Update version in build.gradle

* Make installer name different to app (It's a weird way to do it, it renames the file in a gradle task).

* Update java-autoformat.yml

Added check to make sure the pull request is not from a fork

---------

Co-authored-by: Charles Tian <46334090+charlestian23@users.noreply.github.com>
Co-authored-by: Chase-Grajeda <chase.grajeda@gmail.com>
Co-authored-by: Chase Grajeda <76405306+Chase-Grajeda@users.noreply.github.com>
Co-authored-by: charlestian23 <charles.tian23@gmail.com>

* Update build.gradle (#741)

* Update build.gradle

Fixing the deprecation issues in the autoformatter

* Update build.gradle

* Update build.gradle

* Update to use Java 21

* Automated Java code formatting changes

---------

Co-authored-by: Bram van Heuveln <bram28@users.noreply.github.com>

* Updating to version 6.0.0

Changing to 6.0.0 since Java upgrade may break backwards compatibility

* Importer written

First draft of the importer written and setData refactored

* small bug fixes

* Added Puzzle Factory and Importer

Refactored a bunch of code so we now (in theory) import correctly

* Delete ThermometerExporter.java

* Added Thermometer to Config file

---------

Co-authored-by: Charles Tian <46334090+charlestian23@users.noreply.github.com>
Co-authored-by: Chase-Grajeda <chase.grajeda@gmail.com>
Co-authored-by: Chase Grajeda <76405306+Chase-Grajeda@users.noreply.github.com>
Co-authored-by: ThisMatt <popem@rpi.edu>
Co-authored-by: ThisMatt <98851950+ThisMatt@users.noreply.github.com>
Co-authored-by: Jaden Tian <56417002+jadeandtea@users.noreply.github.com>
Co-authored-by: Bram van Heuveln <bram28@users.noreply.github.com>
Co-authored-by: charlestian23 <charles.tian23@gmail.com>
Co-authored-by: Fisher Luba <145061313+FisherLuba@users.noreply.github.com>
Co-authored-by: Fuzzabee <63023750+Fuzzabee@users.noreply.github.com>
ZevCe pushed a commit that referenced this pull request Mar 15, 2024
* Fixed Short Truth Table case rule bug (#707)

* Revert "Bugfix 549 (#682)"

This reverts commit 5048ee6.

* Case rule test fix (#705)

Co-authored-by: Chase Grajeda <76405306+Chase-Grajeda@users.noreply.github.com>

* Rapid fix for STT case rules

Case rules broke at some point from legacy code or merge conflict. Provided is a quick fix in CaseRule and CaseRule_Generic

* Revert "Revert "Bugfix 549 (#682)"" (#706)

This reverts commit e9fe310.

---------

Co-authored-by: Chase-Grajeda <chase.grajeda@gmail.com>
Co-authored-by: Chase Grajeda <76405306+Chase-Grajeda@users.noreply.github.com>

* Skyscrapers Test Suite (#708)

* Simplify rule names

* Contradiction Test Suite

* checkstyle

* Update Exporter

* Revert "Update Exporter"

This reverts commit bae1a1f.

* Case Rule Test Suite

* Update SkyscrapersExporter.java

* allow null transitions

* Update TreeTransition.java

* Direct Rule Test Suite

* added tests pass

* Update DirectRule.java

Commenting out print statement

---------

Co-authored-by: ThisMatt <popem@rpi.edu>
Co-authored-by: ThisMatt <98851950+ThisMatt@users.noreply.github.com>
Co-authored-by: Chase Grajeda <76405306+Chase-Grajeda@users.noreply.github.com>

* Update ThermometerBoard.java

* Skyscrapers puzzle editor (#720)

* Fixed Short Truth Table case rule bug (#707)

* Revert "Bugfix 549 (#682)"

This reverts commit 5048ee6.

* Case rule test fix (#705)

Co-authored-by: Chase Grajeda <76405306+Chase-Grajeda@users.noreply.github.com>

* Rapid fix for STT case rules

Case rules broke at some point from legacy code or merge conflict. Provided is a quick fix in CaseRule and CaseRule_Generic

* Revert "Revert "Bugfix 549 (#682)"" (#706)

This reverts commit e9fe310.

---------

Co-authored-by: Chase-Grajeda <chase.grajeda@gmail.com>
Co-authored-by: Chase Grajeda <76405306+Chase-Grajeda@users.noreply.github.com>

* Implementing Puzzle Editor

Removing Extraneous TreeTent Code
Allowing setting tile number

* Allow for editing clues on all axies

* Remove Extraneous Code

Removed functionality required for TreeTent but unnecessary for Skyscrapers

* Remove Extraneous Code

* Clue Tile in Editor

Editor now requires selecting the clue tile to edit clues
Added images for the tiles

* Merge branch 'dev' into skyscrapersPuzzleEditor

* Checkstyle Requirement

* Necessary Code

* Allow for test functionality

---------

Co-authored-by: Charles Tian <46334090+charlestian23@users.noreply.github.com>
Co-authored-by: Chase-Grajeda <chase.grajeda@gmail.com>
Co-authored-by: Chase Grajeda <76405306+Chase-Grajeda@users.noreply.github.com>

* Created element files

* Element/rule images

* Java Autoformatter (#728)

* Create java-autoformat.yml

* Setup Java

* Run spotless on repository

* Adding spotless dependency during build

* Adding spotless dependency during build

* Give permissions to run spotless

* Syntax

* Adding Debug Tag

* Check for modified files

Also removed debug tag

* Automated Java code formatting changes

* Test command syntax

* Correctly Identify modified files

* Test autoformatter

* Test autoformatter

* Test autoformatter

* Debugging

* Debugging

* Change method for detecting changed files

* Try building before calling spotless

* Update java-autoformat.yml

* Update java-autoformat.yml

* Update java-autoformat.yml

* Purposely bad formatting

Purposely adding some bad formatting to see if the auto-formatter triggers

* Update build.gradle

Disabling Checkstyle in build so the auto-formatter can trigger

* Update java-autoformat.yml

Have auto-formatter trigger when more commits are added to a pull request

* Debugging

* Adding more awful formatting

* Update java-autoformat.yml

* Changing repo URL

* Going back to checkout v1

* Trying URL change

* Trying out using env

* Trying this now...?

* Introducing more horrible changes

* Spotless formatting using google format v1.19.2

* Manual formatting fix

* Automated Java code formatting changes

* Different format type

Trying to get it to pass checkstyle

* Disable checkstyle temporarily

* Automated Java code formatting changes

* Default google formatting style

* Automated Java code formatting changes

* Comments and reordering styles

* Adding extra newlines

* Automated Java code formatting changes

* Changing tabs from 2 to 4 spaces

Supposedly the only difference that aosp makes is the 2 spaces?
Hopefully it doesn't break anything else

* Remove solo } requirement and reactivate checkstyle

* Automated Java code formatting changes

* Update checkstyle.xml

Removed problematic LeftCurly and RightCurly requirements

* Changing back to tabWidth

* Add newline to test formatter + build

* Automated Java code formatting changes

* Trying some ChatGPT stuff

* Getting rid of problematic experimentation

---------

Co-authored-by: Bram van Heuveln <bram28@users.noreply.github.com>
Co-authored-by: Charles Tian <46334090+charlestian23@users.noreply.github.com>
Co-authored-by: charlestian23 <charles.tian23@gmail.com>

* Java21 (#714)

* Fixed Short Truth Table case rule bug (#707)

* Revert "Bugfix 549 (#682)"

This reverts commit 5048ee6.

* Case rule test fix (#705)

Co-authored-by: Chase Grajeda <76405306+Chase-Grajeda@users.noreply.github.com>

* Rapid fix for STT case rules

Case rules broke at some point from legacy code or merge conflict. Provided is a quick fix in CaseRule and CaseRule_Generic

* Revert "Revert "Bugfix 549 (#682)"" (#706)

This reverts commit e9fe310.

---------

Co-authored-by: Chase-Grajeda <chase.grajeda@gmail.com>
Co-authored-by: Chase Grajeda <76405306+Chase-Grajeda@users.noreply.github.com>

* Change Java version to 21 and setup JPackage to bundle Java with the app

* Setup gradle action for java 21

* Fix distribution in gradle.yml

* Fix java version in tests

* Fix java distribution in tests

* Add jpackage task

* Add Linux to jpackage task

* Fix jpackage task

* Add java setup to jpackage tasks

* Separate build into separate tasks for different operating systems

* Fix mac jpackage not working and changed names of artifacts

* Potential macos installer build fix

* Potential macos installer build fix attempt 2

* Potential macos installer build fix attempt 3

* Add quotes around executable name for macos installer

* Add logo and shortcut prompt

* Update version in build.gradle

* Make installer name different to app (It's a weird way to do it, it renames the file in a gradle task).

* Update java-autoformat.yml

Added check to make sure the pull request is not from a fork

---------

Co-authored-by: Charles Tian <46334090+charlestian23@users.noreply.github.com>
Co-authored-by: Chase-Grajeda <chase.grajeda@gmail.com>
Co-authored-by: Chase Grajeda <76405306+Chase-Grajeda@users.noreply.github.com>
Co-authored-by: charlestian23 <charles.tian23@gmail.com>

* Update build.gradle (#741)

* Update build.gradle

Fixing the deprecation issues in the autoformatter

* Update build.gradle

* Update build.gradle

* Update to use Java 21

* Automated Java code formatting changes

---------

Co-authored-by: Bram van Heuveln <bram28@users.noreply.github.com>

* Updating to version 6.0.0

Changing to 6.0.0 since Java upgrade may break backwards compatibility

* Too many mercury 1st draft

* Too few mercury contradiction rule

* error fixes

* misc cleanup

* Starting on case rules

* Rest is Empty direct rule and getHead for vials

* Prior is filled rule and getTail functionality

* Prior filled small fix

* Retrofit because I forgot to merge for 2 weeks

* Rest empty quick fix

---------

Co-authored-by: Charles Tian <46334090+charlestian23@users.noreply.github.com>
Co-authored-by: Chase-Grajeda <chase.grajeda@gmail.com>
Co-authored-by: Chase Grajeda <76405306+Chase-Grajeda@users.noreply.github.com>
Co-authored-by: ThisMatt <popem@rpi.edu>
Co-authored-by: ThisMatt <98851950+ThisMatt@users.noreply.github.com>
Co-authored-by: Jaden Tian <56417002+jadeandtea@users.noreply.github.com>
Co-authored-by: Bram van Heuveln <bram28@users.noreply.github.com>
Co-authored-by: charlestian23 <charles.tian23@gmail.com>
Co-authored-by: Fisher Luba <145061313+FisherLuba@users.noreply.github.com>
Fuzzabee added a commit that referenced this pull request Mar 20, 2024
* Fixed Short Truth Table case rule bug (#707)

* Revert "Bugfix 549 (#682)"

This reverts commit 5048ee6.

* Case rule test fix (#705)

Co-authored-by: Chase Grajeda <76405306+Chase-Grajeda@users.noreply.github.com>

* Rapid fix for STT case rules

Case rules broke at some point from legacy code or merge conflict. Provided is a quick fix in CaseRule and CaseRule_Generic

* Revert "Revert "Bugfix 549 (#682)"" (#706)

This reverts commit e9fe310.

---------

Co-authored-by: Chase-Grajeda <chase.grajeda@gmail.com>
Co-authored-by: Chase Grajeda <76405306+Chase-Grajeda@users.noreply.github.com>

* Skyscrapers Test Suite (#708)

* Simplify rule names

* Contradiction Test Suite

* checkstyle

* Update Exporter

* Revert "Update Exporter"

This reverts commit bae1a1f.

* Case Rule Test Suite

* Update SkyscrapersExporter.java

* allow null transitions

* Update TreeTransition.java

* Direct Rule Test Suite

* added tests pass

* Update DirectRule.java

Commenting out print statement

---------

Co-authored-by: ThisMatt <popem@rpi.edu>
Co-authored-by: ThisMatt <98851950+ThisMatt@users.noreply.github.com>
Co-authored-by: Chase Grajeda <76405306+Chase-Grajeda@users.noreply.github.com>

* Skyscrapers puzzle editor (#720)

* Fixed Short Truth Table case rule bug (#707)

* Revert "Bugfix 549 (#682)"

This reverts commit 5048ee6.

* Case rule test fix (#705)

Co-authored-by: Chase Grajeda <76405306+Chase-Grajeda@users.noreply.github.com>

* Rapid fix for STT case rules

Case rules broke at some point from legacy code or merge conflict. Provided is a quick fix in CaseRule and CaseRule_Generic

* Revert "Revert "Bugfix 549 (#682)"" (#706)

This reverts commit e9fe310.

---------

Co-authored-by: Chase-Grajeda <chase.grajeda@gmail.com>
Co-authored-by: Chase Grajeda <76405306+Chase-Grajeda@users.noreply.github.com>

* Implementing Puzzle Editor

Removing Extraneous TreeTent Code
Allowing setting tile number

* Allow for editing clues on all axies

* Remove Extraneous Code

Removed functionality required for TreeTent but unnecessary for Skyscrapers

* Remove Extraneous Code

* Clue Tile in Editor

Editor now requires selecting the clue tile to edit clues
Added images for the tiles

* Merge branch 'dev' into skyscrapersPuzzleEditor

* Checkstyle Requirement

* Necessary Code

* Allow for test functionality

---------

Co-authored-by: Charles Tian <46334090+charlestian23@users.noreply.github.com>
Co-authored-by: Chase-Grajeda <chase.grajeda@gmail.com>
Co-authored-by: Chase Grajeda <76405306+Chase-Grajeda@users.noreply.github.com>

* Starting work on thermometer class

* Added Vial Class

Added the vial class which will be helpful for checking rules down the line

* Discontinuous Mercury Rule added

Added the Discontinuous Mercury contradiciton rule. Added variables to the ThermometerBoard class to keep track of the numbers on the perimiter of the board as well as accessors/setters for these variables. Rewrote a section of the Vials code to make sure cells are added correctly as well as added some accessor functions.

* Java Autoformatter (#728)

* Create java-autoformat.yml

* Setup Java

* Run spotless on repository

* Adding spotless dependency during build

* Adding spotless dependency during build

* Give permissions to run spotless

* Syntax

* Adding Debug Tag

* Check for modified files

Also removed debug tag

* Automated Java code formatting changes

* Test command syntax

* Correctly Identify modified files

* Test autoformatter

* Test autoformatter

* Test autoformatter

* Debugging

* Debugging

* Change method for detecting changed files

* Try building before calling spotless

* Update java-autoformat.yml

* Update java-autoformat.yml

* Update java-autoformat.yml

* Purposely bad formatting

Purposely adding some bad formatting to see if the auto-formatter triggers

* Update build.gradle

Disabling Checkstyle in build so the auto-formatter can trigger

* Update java-autoformat.yml

Have auto-formatter trigger when more commits are added to a pull request

* Debugging

* Adding more awful formatting

* Update java-autoformat.yml

* Changing repo URL

* Going back to checkout v1

* Trying URL change

* Trying out using env

* Trying this now...?

* Introducing more horrible changes

* Spotless formatting using google format v1.19.2

* Manual formatting fix

* Automated Java code formatting changes

* Different format type

Trying to get it to pass checkstyle

* Disable checkstyle temporarily

* Automated Java code formatting changes

* Default google formatting style

* Automated Java code formatting changes

* Comments and reordering styles

* Adding extra newlines

* Automated Java code formatting changes

* Changing tabs from 2 to 4 spaces

Supposedly the only difference that aosp makes is the 2 spaces?
Hopefully it doesn't break anything else

* Remove solo } requirement and reactivate checkstyle

* Automated Java code formatting changes

* Update checkstyle.xml

Removed problematic LeftCurly and RightCurly requirements

* Changing back to tabWidth

* Add newline to test formatter + build

* Automated Java code formatting changes

* Trying some ChatGPT stuff

* Getting rid of problematic experimentation

---------

Co-authored-by: Bram van Heuveln <bram28@users.noreply.github.com>
Co-authored-by: Charles Tian <46334090+charlestian23@users.noreply.github.com>
Co-authored-by: charlestian23 <charles.tian23@gmail.com>

* Java21 (#714)

* Fixed Short Truth Table case rule bug (#707)

* Revert "Bugfix 549 (#682)"

This reverts commit 5048ee6.

* Case rule test fix (#705)

Co-authored-by: Chase Grajeda <76405306+Chase-Grajeda@users.noreply.github.com>

* Rapid fix for STT case rules

Case rules broke at some point from legacy code or merge conflict. Provided is a quick fix in CaseRule and CaseRule_Generic

* Revert "Revert "Bugfix 549 (#682)"" (#706)

This reverts commit e9fe310.

---------

Co-authored-by: Chase-Grajeda <chase.grajeda@gmail.com>
Co-authored-by: Chase Grajeda <76405306+Chase-Grajeda@users.noreply.github.com>

* Change Java version to 21 and setup JPackage to bundle Java with the app

* Setup gradle action for java 21

* Fix distribution in gradle.yml

* Fix java version in tests

* Fix java distribution in tests

* Add jpackage task

* Add Linux to jpackage task

* Fix jpackage task

* Add java setup to jpackage tasks

* Separate build into separate tasks for different operating systems

* Fix mac jpackage not working and changed names of artifacts

* Potential macos installer build fix

* Potential macos installer build fix attempt 2

* Potential macos installer build fix attempt 3

* Add quotes around executable name for macos installer

* Add logo and shortcut prompt

* Update version in build.gradle

* Make installer name different to app (It's a weird way to do it, it renames the file in a gradle task).

* Update java-autoformat.yml

Added check to make sure the pull request is not from a fork

---------

Co-authored-by: Charles Tian <46334090+charlestian23@users.noreply.github.com>
Co-authored-by: Chase-Grajeda <chase.grajeda@gmail.com>
Co-authored-by: Chase Grajeda <76405306+Chase-Grajeda@users.noreply.github.com>
Co-authored-by: charlestian23 <charles.tian23@gmail.com>

* Update build.gradle (#741)

* Update build.gradle

Fixing the deprecation issues in the autoformatter

* Update build.gradle

* Update build.gradle

* Update to use Java 21

* Automated Java code formatting changes

---------

Co-authored-by: Bram van Heuveln <bram28@users.noreply.github.com>

* Updating to version 6.0.0

Changing to 6.0.0 since Java upgrade may break backwards compatibility

* Importer written

First draft of the importer written and setData refactored

* small bug fixes

* Added Puzzle Factory and Importer

Refactored a bunch of code so we now (in theory) import correctly

* Delete ThermometerExporter.java

* Added Thermometer to Config file

* Added necessary code to constructor

* Messing with Rule Recognition

* Fixing desyncs in repo

* More syncing and organizing files

* Small misc improvements

Further work on getting a file to open without errors

* Fixed verify vial method

---------

Co-authored-by: Charles Tian <46334090+charlestian23@users.noreply.github.com>
Co-authored-by: Chase-Grajeda <chase.grajeda@gmail.com>
Co-authored-by: Chase Grajeda <76405306+Chase-Grajeda@users.noreply.github.com>
Co-authored-by: ThisMatt <popem@rpi.edu>
Co-authored-by: ThisMatt <98851950+ThisMatt@users.noreply.github.com>
Co-authored-by: Jaden Tian <56417002+jadeandtea@users.noreply.github.com>
Co-authored-by: Bram van Heuveln <bram28@users.noreply.github.com>
Co-authored-by: charlestian23 <charles.tian23@gmail.com>
Co-authored-by: Fisher Luba <145061313+FisherLuba@users.noreply.github.com>
Co-authored-by: Fuzzabee <63023750+Fuzzabee@users.noreply.github.com>
morenomarcus03 pushed a commit that referenced this pull request Apr 2, 2024
* Fixed Short Truth Table case rule bug (#707)

* Revert "Bugfix 549 (#682)"

This reverts commit 5048ee6.

* Case rule test fix (#705)

Co-authored-by: Chase Grajeda <76405306+Chase-Grajeda@users.noreply.github.com>

* Rapid fix for STT case rules

Case rules broke at some point from legacy code or merge conflict. Provided is a quick fix in CaseRule and CaseRule_Generic

* Revert "Revert "Bugfix 549 (#682)"" (#706)

This reverts commit e9fe310.

---------

Co-authored-by: Chase-Grajeda <chase.grajeda@gmail.com>
Co-authored-by: Chase Grajeda <76405306+Chase-Grajeda@users.noreply.github.com>

* Skyscrapers Test Suite (#708)

* Simplify rule names

* Contradiction Test Suite

* checkstyle

* Update Exporter

* Revert "Update Exporter"

This reverts commit bae1a1f.

* Case Rule Test Suite

* Update SkyscrapersExporter.java

* allow null transitions

* Update TreeTransition.java

* Direct Rule Test Suite

* added tests pass

* Update DirectRule.java

Commenting out print statement

---------

Co-authored-by: ThisMatt <popem@rpi.edu>
Co-authored-by: ThisMatt <98851950+ThisMatt@users.noreply.github.com>
Co-authored-by: Chase Grajeda <76405306+Chase-Grajeda@users.noreply.github.com>

* Skyscrapers puzzle editor (#720)

* Fixed Short Truth Table case rule bug (#707)

* Revert "Bugfix 549 (#682)"

This reverts commit 5048ee6.

* Case rule test fix (#705)

Co-authored-by: Chase Grajeda <76405306+Chase-Grajeda@users.noreply.github.com>

* Rapid fix for STT case rules

Case rules broke at some point from legacy code or merge conflict. Provided is a quick fix in CaseRule and CaseRule_Generic

* Revert "Revert "Bugfix 549 (#682)"" (#706)

This reverts commit e9fe310.

---------

Co-authored-by: Chase-Grajeda <chase.grajeda@gmail.com>
Co-authored-by: Chase Grajeda <76405306+Chase-Grajeda@users.noreply.github.com>

* Implementing Puzzle Editor

Removing Extraneous TreeTent Code
Allowing setting tile number

* Allow for editing clues on all axies

* Remove Extraneous Code

Removed functionality required for TreeTent but unnecessary for Skyscrapers

* Remove Extraneous Code

* Clue Tile in Editor

Editor now requires selecting the clue tile to edit clues
Added images for the tiles

* Merge branch 'dev' into skyscrapersPuzzleEditor

* Checkstyle Requirement

* Necessary Code

* Allow for test functionality

---------

Co-authored-by: Charles Tian <46334090+charlestian23@users.noreply.github.com>
Co-authored-by: Chase-Grajeda <chase.grajeda@gmail.com>
Co-authored-by: Chase Grajeda <76405306+Chase-Grajeda@users.noreply.github.com>

* Starting work on thermometer class

* Added Vial Class

Added the vial class which will be helpful for checking rules down the line

* Discontinuous Mercury Rule added

Added the Discontinuous Mercury contradiciton rule. Added variables to the ThermometerBoard class to keep track of the numbers on the perimiter of the board as well as accessors/setters for these variables. Rewrote a section of the Vials code to make sure cells are added correctly as well as added some accessor functions.

* Java Autoformatter (#728)

* Create java-autoformat.yml

* Setup Java

* Run spotless on repository

* Adding spotless dependency during build

* Adding spotless dependency during build

* Give permissions to run spotless

* Syntax

* Adding Debug Tag

* Check for modified files

Also removed debug tag

* Automated Java code formatting changes

* Test command syntax

* Correctly Identify modified files

* Test autoformatter

* Test autoformatter

* Test autoformatter

* Debugging

* Debugging

* Change method for detecting changed files

* Try building before calling spotless

* Update java-autoformat.yml

* Update java-autoformat.yml

* Update java-autoformat.yml

* Purposely bad formatting

Purposely adding some bad formatting to see if the auto-formatter triggers

* Update build.gradle

Disabling Checkstyle in build so the auto-formatter can trigger

* Update java-autoformat.yml

Have auto-formatter trigger when more commits are added to a pull request

* Debugging

* Adding more awful formatting

* Update java-autoformat.yml

* Changing repo URL

* Going back to checkout v1

* Trying URL change

* Trying out using env

* Trying this now...?

* Introducing more horrible changes

* Spotless formatting using google format v1.19.2

* Manual formatting fix

* Automated Java code formatting changes

* Different format type

Trying to get it to pass checkstyle

* Disable checkstyle temporarily

* Automated Java code formatting changes

* Default google formatting style

* Automated Java code formatting changes

* Comments and reordering styles

* Adding extra newlines

* Automated Java code formatting changes

* Changing tabs from 2 to 4 spaces

Supposedly the only difference that aosp makes is the 2 spaces?
Hopefully it doesn't break anything else

* Remove solo } requirement and reactivate checkstyle

* Automated Java code formatting changes

* Update checkstyle.xml

Removed problematic LeftCurly and RightCurly requirements

* Changing back to tabWidth

* Add newline to test formatter + build

* Automated Java code formatting changes

* Trying some ChatGPT stuff

* Getting rid of problematic experimentation

---------

Co-authored-by: Bram van Heuveln <bram28@users.noreply.github.com>
Co-authored-by: Charles Tian <46334090+charlestian23@users.noreply.github.com>
Co-authored-by: charlestian23 <charles.tian23@gmail.com>

* Java21 (#714)

* Fixed Short Truth Table case rule bug (#707)

* Revert "Bugfix 549 (#682)"

This reverts commit 5048ee6.

* Case rule test fix (#705)

Co-authored-by: Chase Grajeda <76405306+Chase-Grajeda@users.noreply.github.com>

* Rapid fix for STT case rules

Case rules broke at some point from legacy code or merge conflict. Provided is a quick fix in CaseRule and CaseRule_Generic

* Revert "Revert "Bugfix 549 (#682)"" (#706)

This reverts commit e9fe310.

---------

Co-authored-by: Chase-Grajeda <chase.grajeda@gmail.com>
Co-authored-by: Chase Grajeda <76405306+Chase-Grajeda@users.noreply.github.com>

* Change Java version to 21 and setup JPackage to bundle Java with the app

* Setup gradle action for java 21

* Fix distribution in gradle.yml

* Fix java version in tests

* Fix java distribution in tests

* Add jpackage task

* Add Linux to jpackage task

* Fix jpackage task

* Add java setup to jpackage tasks

* Separate build into separate tasks for different operating systems

* Fix mac jpackage not working and changed names of artifacts

* Potential macos installer build fix

* Potential macos installer build fix attempt 2

* Potential macos installer build fix attempt 3

* Add quotes around executable name for macos installer

* Add logo and shortcut prompt

* Update version in build.gradle

* Make installer name different to app (It's a weird way to do it, it renames the file in a gradle task).

* Update java-autoformat.yml

Added check to make sure the pull request is not from a fork

---------

Co-authored-by: Charles Tian <46334090+charlestian23@users.noreply.github.com>
Co-authored-by: Chase-Grajeda <chase.grajeda@gmail.com>
Co-authored-by: Chase Grajeda <76405306+Chase-Grajeda@users.noreply.github.com>
Co-authored-by: charlestian23 <charles.tian23@gmail.com>

* Update build.gradle (#741)

* Update build.gradle

Fixing the deprecation issues in the autoformatter

* Update build.gradle

* Update build.gradle

* Update to use Java 21

* Automated Java code formatting changes

---------

Co-authored-by: Bram van Heuveln <bram28@users.noreply.github.com>

* Updating to version 6.0.0

Changing to 6.0.0 since Java upgrade may break backwards compatibility

* Importer written

First draft of the importer written and setData refactored

* small bug fixes

* Added Puzzle Factory and Importer

Refactored a bunch of code so we now (in theory) import correctly

* Delete ThermometerExporter.java

* Added Thermometer to Config file

* Added necessary code to constructor

* Messing with Rule Recognition

* Fixing desyncs in repo

* More syncing and organizing files

* Small misc improvements

Further work on getting a file to open without errors

* Fixed verify vial method

* More work towards visual display

we now have semi working tials!

* Update ThermometerElementView.java

* Rotating images!!!!!

* Added in placeable elements

* Stabilizing bug fixes

* Import silliness

---------

Co-authored-by: Charles Tian <46334090+charlestian23@users.noreply.github.com>
Co-authored-by: Chase-Grajeda <chase.grajeda@gmail.com>
Co-authored-by: Chase Grajeda <76405306+Chase-Grajeda@users.noreply.github.com>
Co-authored-by: ThisMatt <popem@rpi.edu>
Co-authored-by: ThisMatt <98851950+ThisMatt@users.noreply.github.com>
Co-authored-by: Jaden Tian <56417002+jadeandtea@users.noreply.github.com>
Co-authored-by: Bram van Heuveln <bram28@users.noreply.github.com>
Co-authored-by: charlestian23 <charles.tian23@gmail.com>
Co-authored-by: Fisher Luba <145061313+FisherLuba@users.noreply.github.com>
Co-authored-by: Fuzzabee <63023750+Fuzzabee@users.noreply.github.com>
charlestian23 added a commit that referenced this pull request May 5, 2024
* Layout of project

* Added Mercury or Blocked case rule and updated ThermometerController and ThermometerFill. (#725)

Added the first rule case, no test cases yet.

Modified ThermometerController to reflect how the user will interact with the game.

Modified ThermometerFill to reflect controller

* Starting work on thermometer class

* Added Vial Class

Added the vial class which will be helpful for checking rules down the line

* Thermometer (#735)

* Starting work on thermometer class

* Added Vial Class

Added the vial class which will be helpful for checking rules down the line

* Discontinuous Mercury Rule added

Added the Discontinuous Mercury contradiciton rule. Added variables to the ThermometerBoard class to keep track of the numbers on the perimiter of the board as well as accessors/setters for these variables. Rewrote a section of the Vials code to make sure cells are added correctly as well as added some accessor functions.

* Thermometer (#738)

* Update ThermometerBoard.java

* Created element files

* Element/rule images

* Discontinuous Mercury Rule + Misc. behind the scenes changes (#739)

* Fixed Short Truth Table case rule bug (#707)

* Revert "Bugfix 549 (#682)"

This reverts commit 5048ee69d958fdde9b1bb35854c56c9920068346.

* Case rule test fix (#705)

Co-authored-by: Chase Grajeda <76405306+Chase-Grajeda@users.noreply.github.com>

* Rapid fix for STT case rules

Case rules broke at some point from legacy code or merge conflict. Provided is a quick fix in CaseRule and CaseRule_Generic

* Revert "Revert "Bugfix 549 (#682)"" (#706)

This reverts commit e9fe310378721aa4b4fa358aa57ec44f21d086c1.

---------

Co-authored-by: Chase-Grajeda <chase.grajeda@gmail.com>
Co-authored-by: Chase Grajeda <76405306+Chase-Grajeda@users.noreply.github.com>

* Starting work on thermometer class

* Added Vial Class

Added the vial class which will be helpful for checking rules down the line

* Discontinuous Mercury Rule added

Added the Discontinuous Mercury contradiciton rule. Added variables to the ThermometerBoard class to keep track of the numbers on the perimiter of the board as well as accessors/setters for these variables. Rewrote a section of the Vials code to make sure cells are added correctly as well as added some accessor functions.

---------

Co-authored-by: Charles Tian <46334090+charlestian23@users.noreply.github.com>
Co-authored-by: Chase-Grajeda <chase.grajeda@gmail.com>
Co-authored-by: Chase Grajeda <76405306+Chase-Grajeda@users.noreply.github.com>
Co-authored-by: Fuzzabee <63023750+Fuzzabee@users.noreply.github.com>

* Thermometer too many/few mercury (#747)

* Fixed Short Truth Table case rule bug (#707)

* Revert "Bugfix 549 (#682)"

This reverts commit 5048ee69d958fdde9b1bb35854c56c9920068346.

* Case rule test fix (#705)

Co-authored-by: Chase Grajeda <76405306+Chase-Grajeda@users.noreply.github.com>

* Rapid fix for STT case rules

Case rules broke at some point from legacy code or merge conflict. Provided is a quick fix in CaseRule and CaseRule_Generic

* Revert "Revert "Bugfix 549 (#682)"" (#706)

This reverts commit e9fe310378721aa4b4fa358aa57ec44f21d086c1.

---------

Co-authored-by: Chase-Grajeda <chase.grajeda@gmail.com>
Co-authored-by: Chase Grajeda <76405306+Chase-Grajeda@users.noreply.github.com>

* Skyscrapers Test Suite (#708)

* Simplify rule names

* Contradiction Test Suite

* checkstyle

* Update Exporter

* Revert "Update Exporter"

This reverts commit bae1a1f531e407e3b9dd1d28cc79330aa181f410.

* Case Rule Test Suite

* Update SkyscrapersExporter.java

* allow null transitions

* Update TreeTransition.java

* Direct Rule Test Suite

* added tests pass

* Update DirectRule.java

Commenting out print statement

---------

Co-authored-by: ThisMatt <popem@rpi.edu>
Co-authored-by: ThisMatt <98851950+ThisMatt@users.noreply.github.com>
Co-authored-by: Chase Grajeda <76405306+Chase-Grajeda@users.noreply.github.com>

* Update ThermometerBoard.java

* Skyscrapers puzzle editor (#720)

* Fixed Short Truth Table case rule bug (#707)

* Revert "Bugfix 549 (#682)"

This reverts commit 5048ee69d958fdde9b1bb35854c56c9920068346.

* Case rule test fix (#705)

Co-authored-by: Chase Grajeda <76405306+Chase-Grajeda@users.noreply.github.com>

* Rapid fix for STT case rules

Case rules broke at some point from legacy code or merge conflict. Provided is a quick fix in CaseRule and CaseRule_Generic

* Revert "Revert "Bugfix 549 (#682)"" (#706)

This reverts commit e9fe310378721aa4b4fa358aa57ec44f21d086c1.

---------

Co-authored-by: Chase-Grajeda <chase.grajeda@gmail.com>
Co-authored-by: Chase Grajeda <76405306+Chase-Grajeda@users.noreply.github.com>

* Implementing Puzzle Editor

Removing Extraneous TreeTent Code
Allowing setting tile number

* Allow for editing clues on all axies

* Remove Extraneous Code

Removed functionality required for TreeTent but unnecessary for Skyscrapers

* Remove Extraneous Code

* Clue Tile in Editor

Editor now requires selecting the clue tile to edit clues
Added images for the tiles

* Merge branch 'dev' into skyscrapersPuzzleEditor

* Checkstyle Requirement

* Necessary Code

* Allow for test functionality

---------

Co-authored-by: Charles Tian <46334090+charlestian23@users.noreply.github.com>
Co-authored-by: Chase-Grajeda <chase.grajeda@gmail.com>
Co-authored-by: Chase Grajeda <76405306+Chase-Grajeda@users.noreply.github.com>

* Created element files

* Element/rule images

* Java Autoformatter (#728)

* Create java-autoformat.yml

* Setup Java

* Run spotless on repository

* Adding spotless dependency during build

* Adding spotless dependency during build

* Give permissions to run spotless

* Syntax

* Adding Debug Tag

* Check for modified files

Also removed debug tag

* Automated Java code formatting changes

* Test command syntax

* Correctly Identify modified files

* Test autoformatter

* Test autoformatter

* Test autoformatter

* Debugging

* Debugging

* Change method for detecting changed files

* Try building before calling spotless

* Update java-autoformat.yml

* Update java-autoformat.yml

* Update java-autoformat.yml

* Purposely bad formatting

Purposely adding some bad formatting to see if the auto-formatter triggers

* Update build.gradle

Disabling Checkstyle in build so the auto-formatter can trigger

* Update java-autoformat.yml

Have auto-formatter trigger when more commits are added to a pull request

* Debugging

* Adding more awful formatting

* Update java-autoformat.yml

* Changing repo URL

* Going back to checkout v1

* Trying URL change

* Trying out using env

* Trying this now...?

* Introducing more horrible changes

* Spotless formatting using google format v1.19.2

* Manual formatting fix

* Automated Java code formatting changes

* Different format type

Trying to get it to pass checkstyle

* Disable checkstyle temporarily

* Automated Java code formatting changes

* Default google formatting style

* Automated Java code formatting changes

* Comments and reordering styles

* Adding extra newlines

* Automated Java code formatting changes

* Changing tabs from 2 to 4 spaces

Supposedly the only difference that aosp makes is the 2 spaces?
Hopefully it doesn't break anything else

* Remove solo } requirement and reactivate checkstyle

* Automated Java code formatting changes

* Update checkstyle.xml

Removed problematic LeftCurly and RightCurly requirements

* Changing back to tabWidth

* Add newline to test formatter + build

* Automated Java code formatting changes

* Trying some ChatGPT stuff

* Getting rid of problematic experimentation

---------

Co-authored-by: Bram van Heuveln <bram28@users.noreply.github.com>
Co-authored-by: Charles Tian <46334090+charlestian23@users.noreply.github.com>
Co-authored-by: charlestian23 <charles.tian23@gmail.com>

* Java21 (#714)

* Fixed Short Truth Table case rule bug (#707)

* Revert "Bugfix 549 (#682)"

This reverts commit 5048ee69d958fdde9b1bb35854c56c9920068346.

* Case rule test fix (#705)

Co-authored-by: Chase Grajeda <76405306+Chase-Grajeda@users.noreply.github.com>

* Rapid fix for STT case rules

Case rules broke at some point from legacy code or merge conflict. Provided is a quick fix in CaseRule and CaseRule_Generic

* Revert "Revert "Bugfix 549 (#682)"" (#706)

This reverts commit e9fe310378721aa4b4fa358aa57ec44f21d086c1.

---------

Co-authored-by: Chase-Grajeda <chase.grajeda@gmail.com>
Co-authored-by: Chase Grajeda <76405306+Chase-Grajeda@users.noreply.github.com>

* Change Java version to 21 and setup JPackage to bundle Java with the app

* Setup gradle action for java 21

* Fix distribution in gradle.yml

* Fix java version in tests

* Fix java distribution in tests

* Add jpackage task

* Add Linux to jpackage task

* Fix jpackage task

* Add java setup to jpackage tasks

* Separate build into separate tasks for different operating systems

* Fix mac jpackage not working and changed names of artifacts

* Potential macos installer build fix

* Potential macos installer build fix attempt 2

* Potential macos installer build fix attempt 3

* Add quotes around executable name for macos installer

* Add logo and shortcut prompt

* Update version in build.gradle

* Make installer name different to app (It's a weird way to do it, it renames the file in a gradle task).

* Update java-autoformat.yml

Added check to make sure the pull request is not from a fork

---------

Co-authored-by: Charles Tian <46334090+charlestian23@users.noreply.github.com>
Co-authored-by: Chase-Grajeda <chase.grajeda@gmail.com>
Co-authored-by: Chase Grajeda <76405306+Chase-Grajeda@users.noreply.github.com>
Co-authored-by: charlestian23 <charles.tian23@gmail.com>

* Update build.gradle (#741)

* Update build.gradle

Fixing the deprecation issues in the autoformatter

* Update build.gradle

* Update build.gradle

* Update to use Java 21

* Automated Java code formatting changes

---------

Co-authored-by: Bram van Heuveln <bram28@users.noreply.github.com>

* Updating to version 6.0.0

Changing to 6.0.0 since Java upgrade may break backwards compatibility

* Too many mercury 1st draft

* Too few mercury contradiction rule

* error fixes

---------

Co-authored-by: Charles Tian <46334090+charlestian23@users.noreply.github.com>
Co-authored-by: Chase-Grajeda <chase.grajeda@gmail.com>
Co-authored-by: Chase Grajeda <76405306+Chase-Grajeda@users.noreply.github.com>
Co-authored-by: ThisMatt <popem@rpi.edu>
Co-authored-by: ThisMatt <98851950+ThisMatt@users.noreply.github.com>
Co-authored-by: Jaden Tian <56417002+jadeandtea@users.noreply.github.com>
Co-authored-by: Bram van Heuveln <bram28@users.noreply.github.com>
Co-authored-by: charlestian23 <charles.tian23@gmail.com>
Co-authored-by: Fisher Luba <145061313+FisherLuba@users.noreply.github.com>

* Importer written

First draft of the importer written and setData refactored

* small bug fixes

* Added outlines of Finish...WithEmptyDirectRule and RestIsEmptyDirectRule. Need to figure out best way to incorporate these rules when we have time to meet.

* Uploading test xml file for eventual testing

* Added Puzzle Factory and Importer

Refactored a bunch of code so we now (in theory) import correctly

* Thermometer Importer Functionality + Thermometer Puzzle Factory (#756)

* Fixed Short Truth Table case rule bug (#707)

* Revert "Bugfix 549 (#682)"

This reverts commit 5048ee69d958fdde9b1bb35854c56c9920068346.

* Case rule test fix (#705)

Co-authored-by: Chase Grajeda <76405306+Chase-Grajeda@users.noreply.github.com>

* Rapid fix for STT case rules

Case rules broke at some point from legacy code or merge conflict. Provided is a quick fix in CaseRule and CaseRule_Generic

* Revert "Revert "Bugfix 549 (#682)"" (#706)

This reverts commit e9fe310378721aa4b4fa358aa57ec44f21d086c1.

---------

Co-authored-by: Chase-Grajeda <chase.grajeda@gmail.com>
Co-authored-by: Chase Grajeda <76405306+Chase-Grajeda@users.noreply.github.com>

* Starting work on thermometer class

* Added Vial Class

Added the vial class which will be helpful for checking rules down the line

* Discontinuous Mercury Rule added

Added the Discontinuous Mercury contradiciton rule. Added variables to the ThermometerBoard class to keep track of the numbers on the perimiter of the board as well as accessors/setters for these variables. Rewrote a section of the Vials code to make sure cells are added correctly as well as added some accessor functions.

* Importer written

First draft of the importer written and setData refactored

* small bug fixes

* Added Puzzle Factory and Importer

Refactored a bunch of code so we now (in theory) import correctly

---------

Co-authored-by: Charles Tian <46334090+charlestian23@users.noreply.github.com>
Co-authored-by: Chase-Grajeda <chase.grajeda@gmail.com>
Co-authored-by: Chase Grajeda <76405306+Chase-Grajeda@users.noreply.github.com>
Co-authored-by: Fuzzabee <63023750+Fuzzabee@users.noreply.github.com>

* Started Exported and added to ThermometerBoard access to row and col values

* Adding ThermometerExporter.java and therm_test.xml (#759)

* Thermometer Importer Functionality + Thermometer Puzzle Factory (#756) (#1)

* Fixed Short Truth Table case rule bug (#707)

* Revert "Bugfix 549 (#682)"

This reverts commit 5048ee69d958fdde9b1bb35854c56c9920068346.

* Case rule test fix (#705)



* Rapid fix for STT case rules

Case rules broke at some point from legacy code or merge conflict. Provided is a quick fix in CaseRule and CaseRule_Generic

* Revert "Revert "Bugfix 549 (#682)"" (#706)

This reverts commit e9fe310378721aa4b4fa358aa57ec44f21d086c1.

---------




* Starting work on thermometer class

* Added Vial Class

Added the vial class which will be helpful for checking rules down the line

* Discontinuous Mercury Rule added

Added the Discontinuous Mercury contradiciton rule. Added variables to the ThermometerBoard class to keep track of the numbers on the perimiter of the board as well as accessors/setters for these variables. Rewrote a section of the Vials code to make sure cells are added correctly as well as added some accessor functions.

* Importer written

First draft of the importer written and setData refactored

* small bug fixes

* Added Puzzle Factory and Importer

Refactored a bunch of code so we now (in theory) import correctly

---------

Co-authored-by: ZevCe <157339070+ZevCe@users.noreply.github.com>
Co-authored-by: Charles Tian <46334090+charlestian23@users.noreply.github.com>
Co-authored-by: Chase-Grajeda <chase.grajeda@gmail.com>
Co-authored-by: Chase Grajeda <76405306+Chase-Grajeda@users.noreply.github.com>

* Update ThermometerExporter.java

* Git issues, trying to fix

---------

Co-authored-by: ZevCe <157339070+ZevCe@users.noreply.github.com>
Co-authored-by: Charles Tian <46334090+charlestian23@users.noreply.github.com>
Co-authored-by: Chase-Grajeda <chase.grajeda@gmail.com>
Co-authored-by: Chase Grajeda <76405306+Chase-Grajeda@users.noreply.github.com>

* Delete ThermometerExporter.java

* Added Thermometer to Config file

* Quick Config File change (#761)

* Fixed Short Truth Table case rule bug (#707)

* Revert "Bugfix 549 (#682)"

This reverts commit 5048ee69d958fdde9b1bb35854c56c9920068346.

* Case rule test fix (#705)

Co-authored-by: Chase Grajeda <76405306+Chase-Grajeda@users.noreply.github.com>

* Rapid fix for STT case rules

Case rules broke at some point from legacy code or merge conflict. Provided is a quick fix in CaseRule and CaseRule_Generic

* Revert "Revert "Bugfix 549 (#682)"" (#706)

This reverts commit e9fe310378721aa4b4fa358aa57ec44f21d086c1.

---------

Co-authored-by: Chase-Grajeda <chase.grajeda@gmail.com>
Co-authored-by: Chase Grajeda <76405306+Chase-Grajeda@users.noreply.github.com>

* Skyscrapers Test Suite (#708)

* Simplify rule names

* Contradiction Test Suite

* checkstyle

* Update Exporter

* Revert "Update Exporter"

This reverts commit bae1a1f531e407e3b9dd1d28cc79330aa181f410.

* Case Rule Test Suite

* Update SkyscrapersExporter.java

* allow null transitions

* Update TreeTransition.java

* Direct Rule Test Suite

* added tests pass

* Update DirectRule.java

Commenting out print statement

---------

Co-authored-by: ThisMatt <popem@rpi.edu>
Co-authored-by: ThisMatt <98851950+ThisMatt@users.noreply.github.com>
Co-authored-by: Chase Grajeda <76405306+Chase-Grajeda@users.noreply.github.com>

* Skyscrapers puzzle editor (#720)

* Fixed Short Truth Table case rule bug (#707)

* Revert "Bugfix 549 (#682)"

This reverts commit 5048ee69d958fdde9b1bb35854c56c9920068346.

* Case rule test fix (#705)

Co-authored-by: Chase Grajeda <76405306+Chase-Grajeda@users.noreply.github.com>

* Rapid fix for STT case rules

Case rules broke at some point from legacy code or merge conflict. Provided is a quick fix in CaseRule and CaseRule_Generic

* Revert "Revert "Bugfix 549 (#682)"" (#706)

This reverts commit e9fe310378721aa4b4fa358aa57ec44f21d086c1.

---------

Co-authored-by: Chase-Grajeda <chase.grajeda@gmail.com>
Co-authored-by: Chase Grajeda <76405306+Chase-Grajeda@users.noreply.github.com>

* Implementing Puzzle Editor

Removing Extraneous TreeTent Code
Allowing setting tile number

* Allow for editing clues on all axies

* Remove Extraneous Code

Removed functionality required for TreeTent but unnecessary for Skyscrapers

* Remove Extraneous Code

* Clue Tile in Editor

Editor now requires selecting the clue tile to edit clues
Added images for the tiles

* Merge branch 'dev' into skyscrapersPuzzleEditor

* Checkstyle Requirement

* Necessary Code

* Allow for test functionality

---------

Co-authored-by: Charles Tian <46334090+charlestian23@users.noreply.github.com>
Co-authored-by: Chase-Grajeda <chase.grajeda@gmail.com>
Co-authored-by: Chase Grajeda <76405306+Chase-Grajeda@users.noreply.github.com>

* Starting work on thermometer class

* Added Vial Class

Added the vial class which will be helpful for checking rules down the line

* Discontinuous Mercury Rule added

Added the Discontinuous Mercury contradiciton rule. Added variables to the ThermometerBoard class to keep track of the numbers on the perimiter of the board as well as accessors/setters for these variables. Rewrote a section of the Vials code to make sure cells are added correctly as well as added some accessor functions.

* Java Autoformatter (#728)

* Create java-autoformat.yml

* Setup Java

* Run spotless on repository

* Adding spotless dependency during build

* Adding spotless dependency during build

* Give permissions to run spotless

* Syntax

* Adding Debug Tag

* Check for modified files

Also removed debug tag

* Automated Java code formatting changes

* Test command syntax

* Correctly Identify modified files

* Test autoformatter

* Test autoformatter

* Test autoformatter

* Debugging

* Debugging

* Change method for detecting changed files

* Try building before calling spotless

* Update java-autoformat.yml

* Update java-autoformat.yml

* Update java-autoformat.yml

* Purposely bad formatting

Purposely adding some bad formatting to see if the auto-formatter triggers

* Update build.gradle

Disabling Checkstyle in build so the auto-formatter can trigger

* Update java-autoformat.yml

Have auto-formatter trigger when more commits are added to a pull request

* Debugging

* Adding more awful formatting

* Update java-autoformat.yml

* Changing repo URL

* Going back to checkout v1

* Trying URL change

* Trying out using env

* Trying this now...?

* Introducing more horrible changes

* Spotless formatting using google format v1.19.2

* Manual formatting fix

* Automated Java code formatting changes

* Different format type

Trying to get it to pass checkstyle

* Disable checkstyle temporarily

* Automated Java code formatting changes

* Default google formatting style

* Automated Java code formatting changes

* Comments and reordering styles

* Adding extra newlines

* Automated Java code formatting changes

* Changing tabs from 2 to 4 spaces

Supposedly the only difference that aosp makes is the 2 spaces?
Hopefully it doesn't break anything else

* Remove solo } requirement and reactivate checkstyle

* Automated Java code formatting changes

* Update checkstyle.xml

Removed problematic LeftCurly and RightCurly requirements

* Changing back to tabWidth

* Add newline to test formatter + build

* Automated Java code formatting changes

* Trying some ChatGPT stuff

* Getting rid of problematic experimentation

---------

Co-authored-by: Bram van Heuveln <bram28@users.noreply.github.com>
Co-authored-by: Charles Tian <46334090+charlestian23@users.noreply.github.com>
Co-authored-by: charlestian23 <charles.tian23@gmail.com>

* Java21 (#714)

* Fixed Short Truth Table case rule bug (#707)

* Revert "Bugfix 549 (#682)"

This reverts commit 5048ee69d958fdde9b1bb35854c56c9920068346.

* Case rule test fix (#705)

Co-authored-by: Chase Grajeda <76405306+Chase-Grajeda@users.noreply.github.com>

* Rapid fix for STT case rules

Case rules broke at some point from legacy code or merge conflict. Provided is a quick fix in CaseRule and CaseRule_Generic

* Revert "Revert "Bugfix 549 (#682)"" (#706)

This reverts commit e9fe310378721aa4b4fa358aa57ec44f21d086c1.

---------

Co-authored-by: Chase-Grajeda <chase.grajeda@gmail.com>
Co-authored-by: Chase Grajeda <76405306+Chase-Grajeda@users.noreply.github.com>

* Change Java version to 21 and setup JPackage to bundle Java with the app

* Setup gradle action for java 21

* Fix distribution in gradle.yml

* Fix java version in tests

* Fix java distribution in tests

* Add jpackage task

* Add Linux to jpackage task

* Fix jpackage task

* Add java setup to jpackage tasks

* Separate build into separate tasks for different operating systems

* Fix mac jpackage not working and changed names of artifacts

* Potential macos installer build fix

* Potential macos installer build fix attempt 2

* Potential macos installer build fix attempt 3

* Add quotes around executable name for macos installer

* Add logo and shortcut prompt

* Update version in build.gradle

* Make installer name different to app (It's a weird way to do it, it renames the file in a gradle task).

* Update java-autoformat.yml

Added check to make sure the pull request is not from a fork

---------

Co-authored-by: Charles Tian <46334090+charlestian23@users.noreply.github.com>
Co-authored-by: Chase-Grajeda <chase.grajeda@gmail.com>
Co-authored-by: Chase Grajeda <76405306+Chase-Grajeda@users.noreply.github.com>
Co-authored-by: charlestian23 <charles.tian23@gmail.com>

* Update build.gradle (#741)

* Update build.gradle

Fixing the deprecation issues in the autoformatter

* Update build.gradle

* Update build.gradle

* Update to use Java 21

* Automated Java code formatting changes

---------

Co-authored-by: Bram van Heuveln <bram28@users.noreply.github.com>

* Updating to version 6.0.0

Changing to 6.0.0 since Java upgrade may break backwards compatibility

* Importer written

First draft of the importer written and setData refactored

* small bug fixes

* Added Puzzle Factory and Importer

Refactored a bunch of code so we now (in theory) import correctly

* Delete ThermometerExporter.java

* Added Thermometer to Config file

---------

Co-authored-by: Charles Tian <46334090+charlestian23@users.noreply.github.com>
Co-authored-by: Chase-Grajeda <chase.grajeda@gmail.com>
Co-authored-by: Chase Grajeda <76405306+Chase-Grajeda@users.noreply.github.com>
Co-authored-by: ThisMatt <popem@rpi.edu>
Co-authored-by: ThisMatt <98851950+ThisMatt@users.noreply.github.com>
Co-authored-by: Jaden Tian <56417002+jadeandtea@users.noreply.github.com>
Co-authored-by: Bram van Heuveln <bram28@users.noreply.github.com>
Co-authored-by: charlestian23 <charles.tian23@gmail.com>
Co-authored-by: Fisher Luba <145061313+FisherLuba@users.noreply.github.com>
Co-authored-by: Fuzzabee <63023750+Fuzzabee@users.noreply.github.com>

* Added necessary code to constructor

* Messing with Rule Recognition

* Retrofit because I forgot to merge for two weeks (#764)

* Fixed Short Truth Table case rule bug (#707)

* Revert "Bugfix 549 (#682)"

This reverts commit 5048ee69d958fdde9b1bb35854c56c9920068346.

* Case rule test fix (#705)

Co-authored-by: Chase Grajeda <76405306+Chase-Grajeda@users.noreply.github.com>

* Rapid fix for STT case rules

Case rules broke at some point from legacy code or merge conflict. Provided is a quick fix in CaseRule and CaseRule_Generic

* Revert "Revert "Bugfix 549 (#682)"" (#706)

This reverts commit e9fe310378721aa4b4fa358aa57ec44f21d086c1.

---------

Co-authored-by: Chase-Grajeda <chase.grajeda@gmail.com>
Co-authored-by: Chase Grajeda <76405306+Chase-Grajeda@users.noreply.github.com>

* Skyscrapers Test Suite (#708)

* Simplify rule names

* Contradiction Test Suite

* checkstyle

* Update Exporter

* Revert "Update Exporter"

This reverts commit bae1a1f531e407e3b9dd1d28cc79330aa181f410.

* Case Rule Test Suite

* Update SkyscrapersExporter.java

* allow null transitions

* Update TreeTransition.java

* Direct Rule Test Suite

* added tests pass

* Update DirectRule.java

Commenting out print statement

---------

Co-authored-by: ThisMatt <popem@rpi.edu>
Co-authored-by: ThisMatt <98851950+ThisMatt@users.noreply.github.com>
Co-authored-by: Chase Grajeda <76405306+Chase-Grajeda@users.noreply.github.com>

* Update ThermometerBoard.java

* Skyscrapers puzzle editor (#720)

* Fixed Short Truth Table case rule bug (#707)

* Revert "Bugfix 549 (#682)"

This reverts commit 5048ee69d958fdde9b1bb35854c56c9920068346.

* Case rule test fix (#705)

Co-authored-by: Chase Grajeda <76405306+Chase-Grajeda@users.noreply.github.com>

* Rapid fix for STT case rules

Case rules broke at some point from legacy code or merge conflict. Provided is a quick fix in CaseRule and CaseRule_Generic

* Revert "Revert "Bugfix 549 (#682)"" (#706)

This reverts commit e9fe310378721aa4b4fa358aa57ec44f21d086c1.

---------

Co-authored-by: Chase-Grajeda <chase.grajeda@gmail.com>
Co-authored-by: Chase Grajeda <76405306+Chase-Grajeda@users.noreply.github.com>

* Implementing Puzzle Editor

Removing Extraneous TreeTent Code
Allowing setting tile number

* Allow for editing clues on all axies

* Remove Extraneous Code

Removed functionality required for TreeTent but unnecessary for Skyscrapers

* Remove Extraneous Code

* Clue Tile in Editor

Editor now requires selecting the clue tile to edit clues
Added images for the tiles

* Merge branch 'dev' into skyscrapersPuzzleEditor

* Checkstyle Requirement

* Necessary Code

* Allow for test functionality

---------

Co-authored-by: Charles Tian <46334090+charlestian23@users.noreply.github.com>
Co-authored-by: Chase-Grajeda <chase.grajeda@gmail.com>
Co-authored-by: Chase Grajeda <76405306+Chase-Grajeda@users.noreply.github.com>

* Created element files

* Element/rule images

* Java Autoformatter (#728)

* Create java-autoformat.yml

* Setup Java

* Run spotless on repository

* Adding spotless dependency during build

* Adding spotless dependency during build

* Give permissions to run spotless

* Syntax

* Adding Debug Tag

* Check for modified files

Also removed debug tag

* Automated Java code formatting changes

* Test command syntax

* Correctly Identify modified files

* Test autoformatter

* Test autoformatter

* Test autoformatter

* Debugging

* Debugging

* Change method for detecting changed files

* Try building before calling spotless

* Update java-autoformat.yml

* Update java-autoformat.yml

* Update java-autoformat.yml

* Purposely bad formatting

Purposely adding some bad formatting to see if the auto-formatter triggers

* Update build.gradle

Disabling Checkstyle in build so the auto-formatter can trigger

* Update java-autoformat.yml

Have auto-formatter trigger when more commits are added to a pull request

* Debugging

* Adding more awful formatting

* Update java-autoformat.yml

* Changing repo URL

* Going back to checkout v1

* Trying URL change

* Trying out using env

* Trying this now...?

* Introducing more horrible changes

* Spotless formatting using google format v1.19.2

* Manual formatting fix

* Automated Java code formatting changes

* Different format type

Trying to get it to pass checkstyle

* Disable checkstyle temporarily

* Automated Java code formatting changes

* Default google formatting style

* Automated Java code formatting changes

* Comments and reordering styles

* Adding extra newlines

* Automated Java code formatting changes

* Changing tabs from 2 to 4 spaces

Supposedly the only difference that aosp makes is the 2 spaces?
Hopefully it doesn't break anything else

* Remove solo } requirement and reactivate checkstyle

* Automated Java code formatting changes

* Update checkstyle.xml

Removed problematic LeftCurly and RightCurly requirements

* Changing back to tabWidth

* Add newline to test formatter + build

* Automated Java code formatting changes

* Trying some ChatGPT stuff

* Getting rid of problematic experimentation

---------

Co-authored-by: Bram van Heuveln <bram28@users.noreply.github.com>
Co-authored-by: Charles Tian <46334090+charlestian23@users.noreply.github.com>
Co-authored-by: charlestian23 <charles.tian23@gmail.com>

* Java21 (#714)

* Fixed Short Truth Table case rule bug (#707)

* Revert "Bugfix 549 (#682)"

This reverts commit 5048ee69d958fdde9b1bb35854c56c9920068346.

* Case rule test fix (#705)

Co-authored-by: Chase Grajeda <76405306+Chase-Grajeda@users.noreply.github.com>

* Rapid fix for STT case rules

Case rules broke at some point from legacy code or merge conflict. Provided is a quick fix in CaseRule and CaseRule_Generic

* Revert "Revert "Bugfix 549 (#682)"" (#706)

This reverts commit e9fe310378721aa4b4fa358aa57ec44f21d086c1.

---------

Co-authored-by: Chase-Grajeda <chase.grajeda@gmail.com>
Co-authored-by: Chase Grajeda <76405306+Chase-Grajeda@users.noreply.github.com>

* Change Java version to 21 and setup JPackage to bundle Java with the app

* Setup gradle action for java 21

* Fix distribution in gradle.yml

* Fix java version in tests

* Fix java distribution in tests

* Add jpackage task

* Add Linux to jpackage task

* Fix jpackage task

* Add java setup to jpackage tasks

* Separate build into separate tasks for different operating systems

* Fix mac jpackage not working and changed names of artifacts

* Potential macos installer build fix

* Potential macos installer build fix attempt 2

* Potential macos installer build fix attempt 3

* Add quotes around executable name for macos installer

* Add logo and shortcut prompt

* Update version in build.gradle

* Make installer name different to app (It's a weird way to do it, it renames the file in a gradle task).

* Update java-autoformat.yml

Added check to make sure the pull request is not from a fork

---------

Co-authored-by: Charles Tian <46334090+charlestian23@users.noreply.github.com>
Co-authored-by: Chase-Grajeda <chase.grajeda@gmail.com>
Co-authored-by: Chase Grajeda <76405306+Chase-Grajeda@users.noreply.github.com>
Co-authored-by: charlestian23 <charles.tian23@gmail.com>

* Update build.gradle (#741)

* Update build.gradle

Fixing the deprecation issues in the autoformatter

* Update build.gradle

* Update build.gradle

* Update to use Java 21

* Automated Java code formatting changes

---------

Co-authored-by: Bram van Heuveln <bram28@users.noreply.github.com>

* Updating to version 6.0.0

Changing to 6.0.0 since Java upgrade may break backwards compatibility

* Too many mercury 1st draft

* Too few mercury contradiction rule

* error fixes

* misc cleanup

* Starting on case rules

* Rest is Empty direct rule and getHead for vials

* Prior is filled rule and getTail functionality

* Prior filled small fix

* Retrofit because I forgot to merge for 2 weeks

* Rest empty quick fix

---------

Co-authored-by: Charles Tian <46334090+charlestian23@users.noreply.github.com>
Co-authored-by: Chase-Grajeda <chase.grajeda@gmail.com>
Co-authored-by: Chase Grajeda <76405306+Chase-Grajeda@users.noreply.github.com>
Co-authored-by: ThisMatt <popem@rpi.edu>
Co-authored-by: ThisMatt <98851950+ThisMatt@users.noreply.github.com>
Co-authored-by: Jaden Tian <56417002+jadeandtea@users.noreply.github.com>
Co-authored-by: Bram van Heuveln <bram28@users.noreply.github.com>
Co-authored-by: charlestian23 <charles.tian23@gmail.com>
Co-authored-by: Fisher Luba <145061313+FisherLuba@users.noreply.github.com>

* Fixing desyncs in repo

* More syncing and organizing files

* Thermometer (#766)

* Small misc improvements

Further work on getting a file to open without errors

* Fixed verify vial method

* Various thermometer fixes (#767)

* Fixed Short Truth Table case rule bug (#707)

* Revert "Bugfix 549 (#682)"

This reverts commit 5048ee69d958fdde9b1bb35854c56c9920068346.

* Case rule test fix (#705)

Co-authored-by: Chase Grajeda <76405306+Chase-Grajeda@users.noreply.github.com>

* Rapid fix for STT case rules

Case rules broke at some point from legacy code or merge conflict. Provided is a quick fix in CaseRule and CaseRule_Generic

* Revert "Revert "Bugfix 549 (#682)"" (#706)

This reverts commit e9fe310378721aa4b4fa358aa57ec44f21d086c1.

---------

Co-authored-by: Chase-Grajeda <chase.grajeda@gmail.com>
Co-authored-by: Chase Grajeda <76405306+Chase-Grajeda@users.noreply.github.com>

* Skyscrapers Test Suite (#708)

* Simplify rule names

* Contradiction Test Suite

* checkstyle

* Update Exporter

* Revert "Update Exporter"

This reverts commit bae1a1f531e407e3b9dd1d28cc79330aa181f410.

* Case Rule Test Suite

* Update SkyscrapersExporter.java

* allow null transitions

* Update TreeTransition.java

* Direct Rule Test Suite

* added tests pass

* Update DirectRule.java

Commenting out print statement

---------

Co-authored-by: ThisMatt <popem@rpi.edu>
Co-authored-by: ThisMatt <98851950+ThisMatt@users.noreply.github.com>
Co-authored-by: Chase Grajeda <76405306+Chase-Grajeda@users.noreply.github.com>

* Skyscrapers puzzle editor (#720)

* Fixed Short Truth Table case rule bug (#707)

* Revert "Bugfix 549 (#682)"

This reverts commit 5048ee69d958fdde9b1bb35854c56c9920068346.

* Case rule test fix (#705)

Co-authored-by: Chase Grajeda <76405306+Chase-Grajeda@users.noreply.github.com>

* Rapid fix for STT case rules

Case rules broke at some point from legacy code or merge conflict. Provided is a quick fix in CaseRule and CaseRule_Generic

* Revert "Revert "Bugfix 549 (#682)"" (#706)

This reverts commit e9fe310378721aa4b4fa358aa57ec44f21d086c1.

---------

Co-authored-by: Chase-Grajeda <chase.grajeda@gmail.com>
Co-authored-by: Chase Grajeda <76405306+Chase-Grajeda@users.noreply.github.com>

* Implementing Puzzle Editor

Removing Extraneous TreeTent Code
Allowing setting tile number

* Allow for editing clues on all axies

* Remove Extraneous Code

Removed functionality required for TreeTent but unnecessary for Skyscrapers

* Remove Extraneous Code

* Clue Tile in Editor

Editor now requires selecting the clue tile to edit clues
Added images for the tiles

* Merge branch 'dev' into skyscrapersPuzzleEditor

* Checkstyle Requirement

* Necessary Code

* Allow for test functionality

---------

Co-authored-by: Charles Tian <46334090+charlestian23@users.noreply.github.com>
Co-authored-by: Chase-Grajeda <chase.grajeda@gmail.com>
Co-authored-by: Chase Grajeda <76405306+Chase-Grajeda@users.noreply.github.com>

* Starting work on thermometer class

* Added Vial Class

Added the vial class which will be helpful for checking rules down the line

* Discontinuous Mercury Rule added

Added the Discontinuous Mercury contradiciton rule. Added variables to the ThermometerBoard class to keep track of the numbers on the perimiter of the board as well as accessors/setters for these variables. Rewrote a section of the Vials code to make sure cells are added correctly as well as added some accessor functions.

* Java Autoformatter (#728)

* Create java-autoformat.yml

* Setup Java

* Run spotless on repository

* Adding spotless dependency during build

* Adding spotless dependency during build

* Give permissions to run spotless

* Syntax

* Adding Debug Tag

* Check for modified files

Also removed debug tag

* Automated Java code formatting changes

* Test command syntax

* Correctly Identify modified files

* Test autoformatter

* Test autoformatter

* Test autoformatter

* Debugging

* Debugging

* Change method for detecting changed files

* Try building before calling spotless

* Update java-autoformat.yml

* Update java-autoformat.yml

* Update java-autoformat.yml

* Purposely bad formatting

Purposely adding some bad formatting to see if the auto-formatter triggers

* Update build.gradle

Disabling Checkstyle in build so the auto-formatter can trigger

* Update java-autoformat.yml

Have auto-formatter trigger when more commits are added to a pull request

* Debugging

* Adding more awful formatting

* Update java-autoformat.yml

* Changing repo URL

* Going back to checkout v1

* Trying URL change

* Trying out using env

* Trying this now...?

* Introducing more horrible changes

* Spotless formatting using google format v1.19.2

* Manual formatting fix

* Automated Java code formatting changes

* Different format type

Trying to get it to pass checkstyle

* Disable checkstyle temporarily

* Automated Java code formatting changes

* Default google formatting style

* Automated Java code formatting changes

* Comments and reordering styles

* Adding extra newlines

* Automated Java code formatting changes

* Changing tabs from 2 to 4 spaces

Supposedly the only difference that aosp makes is the 2 spaces?
Hopefully it doesn't break anything else

* Remove solo } requirement and reactivate checkstyle

* Automated Java code formatting changes

* Update checkstyle.xml

Removed problematic LeftCurly and RightCurly requirements

* Changing back to tabWidth

* Add newline to test formatter + build

* Automated Java code formatting changes

* Trying some ChatGPT stuff

* Getting rid of problematic experimentation

---------

Co-authored-by: Bram van Heuveln <bram28@users.noreply.github.com>
Co-authored-by: Charles Tian <46334090+charlestian23@users.noreply.github.com>
Co-authored-by: charlestian23 <charles.tian23@gmail.com>

* Java21 (#714)

* Fixed Short Truth Table case rule bug (#707)

* Revert "Bugfix 549 (#682)"

This reverts commit 5048ee69d958fdde9b1bb35854c56c9920068346.

* Case rule test fix (#705)

Co-authored-by: Chase Grajeda <76405306+Chase-Grajeda@users.noreply.github.com>

* Rapid fix for STT case rules

Case rules broke at some point from legacy code or merge conflict. Provided is a quick fix in CaseRule and CaseRule_Generic

* Revert "Revert "Bugfix 549 (#682)"" (#706)

This reverts commit e9fe310378721aa4b4fa358aa57ec44f21d086c1.

---------

Co-authored-by: Chase-Grajeda <chase.grajeda@gmail.com>
Co-authored-by: Chase Grajeda <76405306+Chase-Grajeda@users.noreply.github.com>

* Change Java version to 21 and setup JPackage to bundle Java with the app

* Setup gradle action for java 21

* Fix distribution in gradle.yml

* Fix java version in tests

* Fix java distribution in tests

* Add jpackage task

* Add Linux to jpackage task

* Fix jpackage task

* Add java setup to jpackage tasks

* Separate build into separate tasks for different operating systems

* Fix mac jpackage not working and changed names of artifacts

* Potential macos installer build fix

* Potential macos installer build fix attempt 2

* Potential macos installer build fix attempt 3

* Add quotes around executable name for macos installer

* Add logo and shortcut prompt

* Update version in build.gradle

* Make installer name different to app (It's a weird way to do it, it renames the file in a gradle task).

* Update java-autoformat.yml

Added check to make sure the pull request is not from a fork

---------

Co-authored-by: Charles Tian <46334090+charlestian23@users.noreply.github.com>
Co-authored-by: Chase-Grajeda <chase.grajeda@gmail.com>
Co-authored-by: Chase Grajeda <76405306+Chase-Grajeda@users.noreply.github.com>
Co-authored-by: charlestian23 <charles.tian23@gmail.com>

* Update build.gradle (#741)

* Update build.gradle

Fixing the deprecation issues in the autoformatter

* Update build.gradle

* Update build.gradle

* Update to use Java 21

* Automated Java code formatting changes

---------

Co-authored-by: Bram van Heuveln <bram28@users.noreply.github.com>

* Updating to version 6.0.0

Changing to 6.0.0 since Java upgrade may break backwards compatibility

* Importer written

First draft of the importer written and setData refactored

* small bug fixes

* Added Puzzle Factory and Importer

Refactored a bunch of code so we now (in theory) import correctly

* Delete ThermometerExporter.java

* Added Thermometer to Config file

* Added necessary code to constructor

* Messing with Rule Recognition

* Fixing desyncs in repo

* More syncing and organizing files

* Small misc improvements

Further work on getting a file to open without errors

* Fixed verify vial method

---------

Co-authored-by: Charles Tian <46334090+charlestian23@users.noreply.github.com>
Co-authored-by: Chase-Grajeda <chase.grajeda@gmail.com>
Co-authored-by: Chase Grajeda <76405306+Chase-Grajeda@users.noreply.github.com>
Co-authored-by: ThisMatt <popem@rpi.edu>
Co-authored-by: ThisMatt <98851950+ThisMatt@users.noreply.github.com>
Co-authored-by: Jaden Tian <56417002+jadeandtea@users.noreply.github.com>
Co-authored-by: Bram van Heuveln <bram28@users.noreply.github.com>
Co-authored-by: charlestian23 <charles.tian23@gmail.com>
Co-authored-by: Fisher Luba <145061313+FisherLuba@users.noreply.github.com>
Co-authored-by: Fuzzabee <63023750+Fuzzabee@users.noreply.github.com>

* More work towards visual display

we now have semi working tials!

* Update ThermometerElementView.java

* Unfinished thermometer updates (#772)

* Thermometer (#773)

Adding images because real rotation is scary

* Rotating images!!!!!

* Thermometer with rotating images!!!! (#782)

* Added in placeable elements

* Stabilizing bug fixes

* Import silliness

* Bug fixes for the Thermometer Bug Fixes (#794)

* Fixed Short Truth Table case rule bug (#707)

* Revert "Bugfix 549 (#682)"

This reverts commit 5048ee69d958fdde9b1bb35854c56c9920068346.

* Case rule test fix (#705)

Co-authored-by: Chase Grajeda <76405306+Chase-Grajeda@users.noreply.github.com>

* Rapid fix for STT case rules

Case rules broke at some point from legacy code or merge conflict. Provided is a quick fix in CaseRule and CaseRule_Generic

* Revert "Revert "Bugfix 549 (#682)"" (#706)

This reverts commit e9fe310378721aa4b4fa358aa57ec44f21d086c1.

---------

Co-authored-by: Chase-Grajeda <chase.grajeda@gmail.com>
Co-authored-by: Chase Grajeda <76405306+Chase-Grajeda@users.noreply.github.com>

* Skyscrapers Test Suite (#708)

* Simplify rule names

* Contradiction Test Suite

* checkstyle

* Update Exporter

* Revert "Update Exporter"

This reverts commit bae1a1f531e407e3b9dd1d28cc79330aa181f410.

* Case Rule Test Suite

* Update SkyscrapersExporter.java

* allow null transitions

* Update TreeTransition.java

* Direct Rule Test Suite

* added tests pass

* Update DirectRule.java

Commenting out print statement

---------

Co-authored-by: ThisMatt <popem@rpi.edu>
Co-authored-by: ThisMatt <98851950+ThisMatt@users.noreply.github.com>
Co-authored-by: Chase Grajeda <76405306+Chase-Grajeda@users.noreply.github.com>

* Skyscrapers puzzle editor (#720)

* Fixed Short Truth Table case rule bug (#707)

* Revert "Bugfix 549 (#682)"

This reverts commit 5048ee69d958fdde9b1bb35854c56c9920068346.

* Case rule test fix (#705)

Co-authored-by: Chase Grajeda <76405306+Chase-Grajeda@users.noreply.github.com>

* Rapid fix for STT case rules

Case rules broke at some point from legacy code or merge conflict. Provided is a quick fix in CaseRule and CaseRule_Generic

* Revert "Revert "Bugfix 549 (#682)"" (#706)

This reverts commit e9fe310378721aa4b4fa358aa57ec44f21d086c1.

---------

Co-authored-by: Chase-Grajeda <chase.grajeda@gmail.com>
Co-authored-by: Chase Grajeda <76405306+Chase-Grajeda@users.noreply.github.com>

* Implementing Puzzle Editor

Removing Extraneous TreeTent Code
Allowing setting tile number

* Allow for editing clues on all axies

* Remove Extraneous Code

Removed functionality required for TreeTent but unnecessary for Skyscrapers

* Remove Extraneous Code

* Clue Tile in Editor

Editor now requires selecting the clue tile to edit clues
Added images for the tiles

* Merge branch 'dev' into skyscrapersPuzzleEditor

* Checkstyle Requirement

* Necessary Code

* Allow for test functionality

---------

Co-authored-by: Charles Tian <46334090+charlestian23@users.noreply.github.com>
Co-authored-by: Chase-Grajeda <chase.grajeda@gmail.com>
Co-authored-by: Chase Grajeda <76405306+Chase-Grajeda@users.noreply.github.com>

* Starting work on thermometer class

* Added Vial Class

Added the vial class which will be helpful for checking rules down the line

* Discontinuous Mercury Rule added

Added the Discontinuous Mercury contradiciton rule. Added variables to the ThermometerBoard class to keep track of the numbers on the perimiter of the board as well as accessors/setters for these variables. Rewrote a section of the Vials code to make sure cells are added correctly as well as added some accessor functions.

* Java Autoformatter (#728)

* Create java-autoformat.yml

* Setup Java

* Run spotless on repository

* Adding spotless dependency during build

* Adding spotless dependency during build

* Give permissions to run spotless

* Syntax

* Adding Debug Tag

* Check for modified files

Also removed debug tag

* Automated Java code formatting changes

* Test command syntax

* Correctly Identify modified files

* Test autoformatter

* Test autoformatter

* Test autoformatter

* Debugging

* Debugging

* Change method for detecting changed files

* Try building before calling spotless

* Update java-autoformat.yml

* Update java-autoformat.yml

* Update java-autoformat.yml

* Purposely bad formatting

Purposely adding some bad formatting to see if the auto-formatter triggers

* Update build.gradle

Disabling Checkstyle in build so the auto-formatter can trigger

* Update java-autoformat.yml

Have auto-formatter trigger when more commits are added to a pull request

* Debugging

* Adding more awful formatting

* Update java-autoformat.yml

* Changing repo URL

* Going back to checkout v1

* Trying URL change

* Trying out using env

* Trying this now...?

* Introducing more horrible changes

* Spotless formatting using google format v1.19.2

* Manual formatting fix

* Automated Java code formatting changes

* Different format type

Trying to get it to pass checkstyle

* Disable checkstyle temporarily

* Automated Java code formatting changes

* Default google formatting style

* Automated Java code formatting changes

* Comments and reordering styles

* Adding extra newlines

* Automated Java code formatting changes

* Changing tabs from 2 to 4 spaces

Supposedly the only difference that aosp makes is the 2 spaces?
Hopefully it doesn't break anything else

* Remove solo } requirement and reactivate checkstyle

* Automated Java code formatting changes

* Update checkstyle.xml

Removed problematic LeftCurly and RightCurly requirements

* Changing back to tabWidth

* Add newline to test formatter + build

* Automated Java code formatting changes

* Trying some ChatGPT stuff

* Getting rid of problematic experimentation

---------

Co-authored-by: Bram van Heuveln <bram28@users.noreply.github.com>
Co-authored-by: Charles Tian <46334090+charlestian23@users.noreply.github.com>
Co-authored-by: charlestian23 <charles.tian23@gmail.com>

* Java21 (#714)

* Fixed Short Truth Table case rule bug (#707)

* Revert "Bugfix 549 (#682)"

This reverts commit 5048ee69d958fdde9b1bb35854c56c9920068346.

* Case rule test fix (#705)

Co-authored-by: Chase Grajeda <76405306+Chase-Grajeda@users.noreply.github.com>

* Rapid fix for STT case rules

Case rules broke at some point from legacy code or merge conflict. Provided is a quick fix in CaseRule and CaseRule_Generic

* Revert "Revert "Bugfix 549 (#682)"" (#706)

This reverts commit e9fe310378721aa4b4fa358aa57ec44f21d086c1.

---------

Co-authored-by: Chase-Grajeda <chase.grajeda@gmail.com>
Co-authored-by: Chase Grajeda <76405306+Chase-Grajeda@users.noreply.github.com>

* Change Java version to 21 and setup JPackage to bundle Java with the app

* Setup gradle action for java 21

* Fix distribution in gradle.yml

* Fix java version in tests

* Fix java distribution in tests

* Add jpackage task

* Add Linux to jpackage task

* Fix jpackage task

* Add java setup to jpackage tasks

* Separate build into separate tasks for different operating systems

* Fix mac jpackage not working and changed names of artifacts

* Potential macos installer build fix

* Potential macos installer build fix attempt 2

* Potential macos installer build fix attempt 3

* Add quotes around executable name for macos installer

* Add logo and shortcut prompt

* Update version in build.gradle

* Make installer name different to app (It's a weird way to do it, it renames the file in a gradle task).

* Update java-autoformat.yml

Added check to make sure the pull request is not from a fork

---------

Co-authored-by: Charles Tian <46334090+charlestian23@users.noreply.github.com>
Co-authored-by: Chase-Grajeda <chase.grajeda@gmail.com>
Co-authored-by: Chase Grajeda <76405306+Chase-Grajeda@users.noreply.github.com>
Co-authored-by: charlestian23 <charles.tian23@gmail.com>

* Update build.gradle (#741)

* Update build.gradle

Fixing the deprecation issues in the autoformatter

* Update build.gradle

* Update build.gradle

* Update to use Java 21

* Automated Java code formatting changes

---------

Co-authored-by: Bram van Heuveln <bram28@users.noreply.github.com>

* Updating to version 6.0.0

Changing to 6.0.0 since Java upgrade may break backwards compatibility

* Importer written

First draft of the importer written and setData refactored

* small bug fixes

* Added Puzzle Factory and Importer

Refactored a bunch of code so we now (in theory) import correctly

* Delete ThermometerExporter.java

* Added Thermometer to Config file

* Added necessary code to constructor

* Messing with Rule Recognition

* Fixing desyncs in repo

* More syncing and organizing files

* Small misc improvements

Further work on getting a file to open without errors

* Fixed verify vial method

* More work towards visual display

we now have semi working tials!

* Update ThermometerElementView.java

* Rotating images!!!!!

* Added in placeable elements

* Stabilizing bug fixes

* Import silliness

---------

Co-authored-by: Charles Tian <46334090+charlestian23@users.noreply.github.com>
Co-authored-by: Chase-Grajeda <chase.grajeda@gmail.com>
Co-authored-by: Chase Grajeda <76405306+Chase-Grajeda@users.noreply.github.com>
Co-authored-by: ThisMatt <popem@rpi.edu>
Co-authored-by: ThisMatt <98851950+ThisMatt@users.noreply.github.com>
Co-authored-by: Jaden Tian <56417002+jadeandtea@users.noreply.github.com>
Co-authored-by: Bram van Heuveln <bram28@users.noreply.github.com>
Co-authored-by: charlestian23 <charles.tian23@gmail.com>
Co-authored-by: Fisher Luba <145061313+FisherLuba@users.noreply.github.com>
Co-authored-by: Fuzzabee <63023750+Fuzzabee@users.noreply.github.com>

* Final Images + Rule file expansion pack (#795)

* Thermometer Cleanup and debugging

* Major Bug Fix (#798)

* Working row/col numbers (#799)

* Early Work for displaying nums

* Work towards displaying numbers

* Working row/col Numbers

* Thermometer (#801)

* Found bug in name of ThermometerTooLarge.png which was throwing errors and not showing up in LEGUP.

* Added documentation comments to rules

* Updated controller to have correct mouse buttons as well as added debug info with middle mouse. Cleaned up a few methods in TheremomterCell as well.

* Fixed ThermomterExporter to allow saving to write correctly to file.

* Thermometer (#807)

* Found bug in name of ThermometerTooLarge.png which was throwing errors and not showing up in LEGUP.

* Added documentation comments to rules

* Updated controller to have correct mouse buttons as well as added debug info with middle mouse. Cleaned up a few methods in TheremomterCell as well.

* Fixed ThermomterExporter to allow saving to write correctly to file.

* Updated therm_text.xml as row/col was reversed. Also updated some comments on Thermometer and ThermometerExporter

* Last minute comments (#810)

* Final Marcus pull (#814)

* Update ThermometerBoard.java

* Created element files

* Element/rule images

* Too many mercury 1st draft

* Too few mercury contradiction rule

* error fixes

* misc cleanup

* Starting on case rules

* Rest is Empty direct rule and getHead for vials

* Prior is filled rule and getTail functionality

* Prior filled small fix

* Retrofit because I forgot to merge for 2 weeks

* Rest empty quick fix

* Images with thicker lines/orientations

* New more visible rule images

* small addition

* Rule Stubs

* Final rule images

* Major Bug Fix

Zevs actually so dumb lol

* Right Click works now

* Reference Sheet Fill-out

* Update therm_test.xml

* final final rule image

* small comments

* comments

* Automated Java code formatting changes

* Automated Java code formatting changes

* Update config

---------

Co-authored-by: ZevCe <cellaz@rpi.edu>
Co-authored-by: Fuzzabee <63023750+Fuzzabee@users.noreply.github.com>
Co-authored-by: ZevCe <157339070+ZevCe@users.noreply.github.com>
Co-authored-by: Charles Tian <46334090+charlestian23@users.noreply.github.com>
Co-authored-by: Chase-Grajeda <chase.grajeda@gmail.com>
Co-authored-by: Chase Grajeda <76405306+Chase-Grajeda@users.noreply.github.com>
Co-authored-by: ThisMatt <popem@rpi.edu>
Co-authored-by: ThisMatt <98851950+ThisMatt@users.noreply.github.com>
Co-authored-by: Jaden Tian <56417002+jadeandtea@users.noreply.github.com>
Co-authored-by: Bram van Heuveln <bram28@users.noreply.github.com>
Co-authored-by: charlestian23 <charles.tian23@gmail.com>
Co-authored-by: Fisher Luba <145061313+FisherLuba@users.noreply.github.com>
Co-authored-by: James Baker <jamesjbaker@tutanota.com>
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.

4 participants