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

Publish Morf Data Copier #8

Open
badgerwithagun opened this issue Jun 10, 2017 · 12 comments
Open

Publish Morf Data Copier #8

badgerwithagun opened this issue Jun 10, 2017 · 12 comments
Assignees

Comments

@badgerwithagun
Copy link
Member

We have a simple command-line/UI tool built over Morf which allows end users to copy arbitrary database schemas and data between servers, platforms and cross-platform XML "dumps".

This is an extremely useful and unique tool and also a nice, clean example of how to use Morf in the real world. We want that published, but it also needs some extrication from our code stack.

@badgerwithagun badgerwithagun self-assigned this Jun 10, 2017
@badgerwithagun badgerwithagun added this to the 1.0.0 milestone Jun 10, 2017
@badgerwithagun
Copy link
Member Author

@tsg21 is making progress on this. Assigned

@tsg21
Copy link
Member

tsg21 commented Nov 18, 2017

I've spent a while trying to progress this in my fork. The main stumbling block is that the UI depends on Eclipse's SWT and JFace, and these are not cleanly available on Maven-central.

They were added earlier this year it seems but I'm having trouble getting this to work. SWT is funky in the way it provides builds for multiple platforms (with native bindings), and it seems the way they've published the jars to Maven confuses m2e.

I keep getting this in the Maven logs:

18/11/2017, 20:46:40 GMT: [WARN] The POM for org.eclipse.platform:org.eclipse.swt:jar:3.106.1 is invalid, transitive dependencies (if any) will not be available: 1 problem was encountered while building the effective model for org.eclipse.platform:org.eclipse.swt:3.106.1
[ERROR] 'dependencies.dependency.artifactId' for org.eclipse.platform:org.eclipse.swt.${osgi.platform}:jar with value 'org.eclipse.swt.${osgi.platform}' does not match a valid id pattern. @ 

And also this in the problems view (amongst other things):

No versions available for org.eclipse.platform:org.eclipse.swt.gtk.linux.aarch64:jar:[3.105.2,3.105.2] within specified range

@tsg21
Copy link
Member

tsg21 commented Nov 19, 2017

Useful discussions on exactly this problem:
https://bugs.eclipse.org/bugs/show_bug.cgi?id=510072
https://bugs.eclipse.org/bugs/show_bug.cgi?id=484004

Doesn't seem to supply a way of getting JFace to work though.

@badgerwithagun
Copy link
Member Author

IMHO I think all we really need is a the command line version. Not sure the SWT UI adds much to the party.

@venushka
Copy link
Member

Since it’s a really simple wizard UI, shall we replace it with JavaFX so that we don’t need the extra dependencies?

@tsg21
Copy link
Member

tsg21 commented Nov 20, 2017

@badgerwithagun : given how much use the UI gets within Alfa, I think it does add value. A command-line version is necessary too, but people like UIs.

@venushka : Possibly. I'm not against. The existing UI is pretty good though. Re-writing in JavaFX seems wasteful when there's a perfectly functional UI already there.

@tsg21 tsg21 closed this as completed Nov 20, 2017
@tsg21 tsg21 reopened this Nov 20, 2017
@badgerwithagun
Copy link
Member Author

Functional but desperately in need a rewrite, in all honesty - particularly to decouple from the JDBC URL generation code and allow support for arbitrary additional dialects.

@tsg21
Copy link
Member

tsg21 commented Nov 20, 2017

Absolutely, but that's a pretty small refactor (in my eyes) compared to completely rebuilding the UI in new tech.

(I don't have the knowledge of Java FX to rebuild the UI. Maybe someone else does?)

@badgerwithagun
Copy link
Member Author

Yeah, it’s pretty straightforward as long as you have simple requirements. Want a taskbar icon? Back to AWT with you. Hook into system level events? Ha! One window wizard? Simples.

@gilleain
Copy link
Contributor

I've taken a look at rewriting from SWT to JavaFX, and it doesn't look too bad. From experience with progress bars in SWT, that might be a little trickier, but no insurmountable.

Will try to get to this over Christmas.

@badgerwithagun
Copy link
Member Author

Just to re-iterate, why do we think the UI is that important? @tsg21 ?

Could we not get the command line version out first and build a UI later?

@tsg21
Copy link
Member

tsg21 commented Jan 2, 2018

It's not essential, by any means (if a good command line alternative is provided), however:

  1. We have plenty of history to suggest people will use it if it is available.
  2. We have expectation from Alfa employees that it is available.

So I think it would be valuable to have as an option.

@gilleain Please feel free to have a go!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

4 participants