updated: mmj2 has tests on windows, but not on linux and pure junit based
cases.

On Mon, Feb 14, 2022 at 10:22 AM Mingli Yuan <[email protected]> wrote:

> Hi, folks,
>
> I had read the long discussion history about mmj2 installation on github:
>
> - https://github.com/digama0/mmj2/issues/14
> - https://github.com/digama0/mmj2/issues/21
> - https://github.com/digama0/mmj2/issues/36
> - https://github.com/digama0/mmj2/issues/37
> - https://github.com/digama0/mmj2/issues/39
>
> Lots of the questions had already been solved, some still haunted there.
> Especially in Issue #39,
> @digama0, @david_a_wheeler and @cwitty discussed the problems and the
> engineering complexity for future fixes.
> After considering all the above in an hour, I don't think the installer in
> my previous mail is a good solution, it is only one possible option.
>
> I respect all the contributors' works and understand the status of open
> source development. We had already improved a lot, but still did not
> achieve the goal
> For me, there are two sets of engineering problems beneath domain
> problems, maybe it is biased on my preference and experience.
>
> 1. homework:
> - 1.1 the build system: ant is OK, nowaday developers use gradle and
> others, the tool chain of Java evolved a lot.
> - 1.2 lack of test cases stops people outside to contribute further.
>
> 2. application problems and solutions
> - 2.1 multiple OS support: at least Windows/Linux/MacOS
> - 2.2 multiple Java environment support: Java 8 and aftermath, esp. the
> LTS versions
> - 2.3 a well-designed convention and workflow on metamath/mmj2 develop:
> where do we put the database and personal works, etc.
>
> Above these pure engineering problems, it is the problems of metamath and
> math, the beneath and above two parts are orthogonal.
> It means a developer can focus on engineering problems without
> introducing too many domain problems.
>
> As any open source projects, the engagement, trust and time are real
> problems. I used to be a Java developer for years and I can contribute some.
> I also propose a way to solve these:
>
> - migrate the build system to a new generation builder
> - give sanity tests on set.mm and other databases
> - give more test cases on basic functionals
> - once tests are ready, we can integrate a CI to check on different OS and
> JVM
>
> By this way, we can define our engineering problems very clearly, all the
> problems are surfaced on one page with different status on different
> platforms,
> and then we can fix them one by one.
>
> @digama0, @david_a_wheeler and @cwitt, what do you think about the
> proposal?
>
> Mingli
>
>
>
>
>
> On Sun, Feb 13, 2022 at 5:08 AM Mingli Yuan <[email protected]> wrote:
>
>> Hi, folks,
>>
>> After 1 day of investigation and 1 day of work, I set up a demo repo
>> which can generate installers to ease mmj2 installation. So far only the
>> Mac version *.dmg was tested.
>>
>> The demo upgraded to a higher JDK version, and then generated installers
>> by jpackage which was shipped by JDK after version 14.
>>
>> The main point is
>> - JRE was bundled with the installer together to ease Java installations
>> - use hidden user directories to store default settings and read only
>> database to eliminate initial configurations
>> - Runnable after installation without any configurations
>>
>> Since it is a quick hack and demo, the code was a little bit dirty.
>> If you think it is helpful, I will put more energy on it.
>>
>> Comments and ideas are welcome.
>>
>> https://github.com/mountain/mmj2e
>>
>> Mingli
>>
>

-- 
You received this message because you are subscribed to the Google Groups 
"Metamath" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/metamath/CAGDRuAii%3DpexaKG_3t5LX8PEsnkMxhOkxOm3VzFWaDXJZm6Lvg%40mail.gmail.com.

Reply via email to