Still working

Skip to first unread message

Mark Porter

Nov 4, 2011, 9:44:52 AM11/4/11
to MynaJS-General
I haven't posted a new release in a while, and I wanted let everyone
know that Myna is still a going concern.

I have been working on several major changes to Myna. This has been
taking longer than I expected. I don't want to release unless I have
done some testing and the documentation is up to snuff. I have also
been re-thinking some architectural decisions in the new code and I
don't want to release something that's deprecated 6 months later.

The major project I'm working on is a Ruby-on-Rails style MVC
framework, called Myna FlightPath. I realized I was most of the way
there with DataManager and now that I have worked with this style of
framework I really see the benefit. I am using CakePHP[1] and
CFWheels[2] as my inspiration, so reading about those frameworks will
tell you a lot about FlightPath. I have probably 80% of what those
frameworks offer implemented and I am just tweaking details, and
writing up the documentation. I have also been working on re-writing
the admin tools in FlightPath which has been helpful for debugging
both the code and the API.

Note: FlightPath is a framework on top of Myna, and is completely
optional. No feature of Myna does, nor will, depend on FlightPath. I
want to make Myna a JS platform that that anyone can use even if they
don't want a framework at all.

Along the way i have been making improvements to DataManager to allow
more querying options, and added the ability to set field labels,
validate values, defer database persistance, and easily retrieve
related beans from other tables, but implicitly via foreign keys and
explicitly via hasOne, hasMany, belongsTo, and hasBridge associations.
I also am now creating explicit classes for DataManager objects and
caching them. When running in optimization levels greater than "-1"
this imparts a significant speed improvement: 5-50ms vs 200-700ms to
load a manager

Many improvements to String, Array, File, and DataSet.

A lot of work on Scheduled Tasks. We are now using this at my hospital
to manage about 50 scheduled tasks

New server mode: replaced winstone with embedded Jetty. Can now run
myna directly from the war file like so:

java -jar myna-1.0_beta_X.war [options] [ -- [jvm arguments]]

-c,--context <arg> Webapp context. Must Start with "/" Default: /

-h,--help Displays help.

-l,--logfile <arg> Log file to use. Will be created if it does not

exist. Default: ./<context>.log

-p,--port <arg> Webserver port. Default: 8180

-w,--webroot <arg> Webroot to use. Will be created if webroot/WEB-

does not exist. Default: ./myna

When running in this mode, Myna actually launches 2 processes. A non-
networked watchdog process and the real app server. The watchdog makes
a web connection to the app server every 10 seconds and checks it's
health. If the app server is not responding, the watchdog will restart
it. This makes Myna very hard to kill.

I expect to have this wrapped up by the end of the year, maybe sooner
if life permits.




Nov 4, 2011, 10:06:34 AM11/4/11
to MynaJS-General
Awesome, you really have been busy. I look forward to the next
release, keep up the good work!

Tony Zakula

Nov 5, 2011, 6:07:32 PM11/5/11
Awesome news! I cannot wait to try it out and see it in action.

Tony Zakula
Direct Line (906) 364-8082

> --
> You received this message because you are subscribed to the Google Groups "MynaJS-General" group.
> To post to this group, send email to
> To unsubscribe from this group, send email to
> For more options, visit this group at

Reply all
Reply to author
0 new messages