AlloyTools / org.alloytools.alloy

Alloy is a language for describing structures and a tool for exploring them. It has been used in a wide range of applications from finding holes in security mechanisms to designing telephone switching networks. This repository contains the code for the tool.
Other
695 stars 124 forks source link

Parduinus #140

Closed pkriens closed 2 years ago

pkriens commented 3 years ago

I wanted to do some work on the code:

– Ubuntu font fix – Github Actions, publish all jars to Maven – Take a look at the new code – See if I can fix some of the outstanding issues

I am not sure how to integrate the Parduinus project easily since it lacks the required .project and .classpath files? The bnd file is correct but this is awkward and not described as far as I could see. We're already facing an uphill battle and this stuff is already complex so using different build systems is begging to be hit. The workspace must start in Eclipse out of the box.

We need to do one of:

1) Fully integrate Parduinus in the workspace as any other project. We can publish the JARs as snapshots on every change so others can rely on the binary. 2) Remove Parduinus sub module and rely on them publishing to a Maven repository and read the binary from there. Interestingly, they seem to have a dependency on the rest of the code as well: the NativeCode class in util. This would need to be removed since it would create a circular dependency. 3) Move the whole workspace to maven.

It is my work to remove this kind of superfluous self inflicted pain situations so I clearly do not want to get one into myself for a project that is more or less a hobby.

I strongly prefer solution 1 (integrate), I can live with 2 (remove), but if we go to 3 (maven) then we'll need another build master, Maven & I do not get along very well :-)