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

Fritzing 2019 Roadmap #3443

Open
KjellMorgenstern opened this issue Apr 27, 2019 · 18 comments

Comments

10 participants
@KjellMorgenstern
Copy link
Member

commented Apr 27, 2019

Hello,

as announced in #3435 , I am taking over maintenance of Fritzing for André. My C++ / Embedded development / Robotics background is a good start, but I am not alone. Together with the help of the people at Aisler and @ovidiub13, a developer with KDE background, we plan to release a fresh build of Fritzing in the near future.

So, this is a short term roadmap, limited to the minimal things to get things rolling.

April/May 2019

  1. Add CI for Linux, Windows and Mac targets
  2. We will create a test release 0.9.4alpha , since toolchains and many other things have changed, and we need to verify that processes still work on a all platforms.
  3. Reduce the number of open issues, by closing issues which are too old, no longer valid, or just to low in priority as “No fix, please re-open if you disagree”.
  4. After alpha, we will roll out 0.9.4b to the download section.
  5. Update developer wiki: Align better with git-flow, rebase all pull requests before merge, only accept PR if CI is green, check basic coding style...

June/July 2019
8. (ongoing) Reduce the number of open issues...
9. Prepare 0.9.5 release, work on new features/feature requests
10. Add black box and unit test infrastructure

August/September 2019
13. Create 0.9.5 beta
14. Release 0.9.5 stable

@vanepp

This comment has been minimized.

Copy link
Contributor

commented Apr 27, 2019

This is wonderful news,! I have been trying (with little success) for that last couple of years to restart development.

"We will create a test release 0.9.4alpha , since toolchains and many other things have changed, and we need to verify that processes still work on a all platforms."

This shouldn't be to bad. I have working environments for Linux and Windows7 and 10 with current versions of Qt and the dependencies. Libgit2 on Windows was hard (at least for me) but I now have a working version (I can share what worked for me, if it turns out to be not obvious for someone experienced in development). There was a problem with an assert on tspans in Qt but I fixed the parts that were causing it in the parts database and it now builds correctly (or at least did a couple of months ago) on Linux and Windows. I don't have a Mac, and someone that does tried but failed (libgit2 problems) to get a build going there, but I expect that to be only a problem of configuration (Linux is somewhat picky about configuration too). Lately I have been working on updating the parts templates on the web site as the current ones are just plain wrong.

Peter

@karpawich

This comment has been minimized.

Copy link

commented Apr 27, 2019

I'm so excited that AISLER found a maintainer! That is great news. @KjellMorgenstern I've been doing some work to rebuild Fritzing in JavaScript. Seeing as you've been brought in, I'll transition towards building a Parts Editor instead.

5. Update developer wiki: Align better with git-flow, rebase all pull requests before merge, only accept PR if CI is green, check basic coding style...

When I wrote parsing functions for Fritzing data files, I discovered many components which were left undocumented in the Wiki. Once when you shift focus to the Wiki, I'll open an Issue with the missing components so the new Wiki can be complete.

@ovidiub13 ovidiub13 added the question label Apr 28, 2019

@jchull

This comment has been minimized.

Copy link

commented Apr 30, 2019

@karpawich

... I've been doing some work to rebuild Fritzing in JavaScript.

Is there a public repo? Seems like someone interpreted your comment to mean the app is being rewritten in JS.

@monodesigns

This comment has been minimized.

Copy link

commented Apr 30, 2019

@jchull

Seems like someone interpreted your comment to mean the app is being rewritten in JS.

I got here from a Hackaday article that claims that Fritzing is being rewritten in JS.

@deshipu

This comment has been minimized.

Copy link

commented Apr 30, 2019

@jchull The effort to "rewrite" Fritzing is centered at https://github.com/freetzing

@ovidiub13 ovidiub13 added this to In progress in Fritzing Apr 30, 2019

@KjellMorgenstern

This comment has been minimized.

Copy link
Member Author

commented Apr 30, 2019

@monodesigns Thanks for the link. The article is misleading, the releases planned here are based on the current code (that is in C++, just to be clear).

@karpawich

This comment has been minimized.

Copy link

commented May 1, 2019

@deshipu @KjellMorgenstern @jchull @monodesigns

I originally led the team which was porting Fritzing over to JavaScript for future development. Seeing as Kjell has been brought in to continue development on the existing C++/Qt codebase, I will be transitioning my work with JavaScript to a Parts Editor desktop application.

I will contact the Hackaday team as well to see that the article is updated to reflect the recent changes.

Edit: I have contacted the author of the article at Hackaday and cc'd Kjell on the email. @PatrickFranken perhaps AISLER could do a PR (Press Release) to clear things up?

@KingDarBoja

This comment has been minimized.

Copy link

commented May 3, 2019

That's a great news! Been waiting for some clean up on Fritzing repo and some development since this open source software been around.

Also, there is going to be some work on the official website along with the forums after those releases? Just curious.

Cheers!

@ovidiub13

This comment has been minimized.

Copy link
Contributor

commented May 3, 2019

Hi @KingDarBoja. Yes we plan to work on the website as well. We're still in the planning phase on that, as there are many moving parts that involve the site.

@DonPavlov

This comment was marked as off-topic.

Copy link

commented May 8, 2019

Any updates on the toolchain and the setup guide for compiling it? I currently fail because of libgit2.

@KjellMorgenstern

This comment was marked as off-topic.

Copy link
Member Author

commented May 8, 2019

@DonPavlov You can use the develop branch. No known issues with libgit2, it stills needs to be next
to the fritzing-app directory as described in the wiki. Currently we use 0.28.1, but older versions should also be ok. You can also get some ideas from the Dockerfile or the .travis.yml or appveyor.yml if you are stuck, those files contain all the stuff for automated builds.

@DonPavlov

This comment was marked as off-topic.

Copy link

commented May 9, 2019

@KjellMorgenstern will try out again with 0.28.1 was just following the guide, which states to use 0.23.4 and somehow i ran into an error what was one of the older issues. It did not find the included lib. Will take a better look at it again with the new version.

@IvanDelsinne

This comment has been minimized.

Copy link

commented May 20, 2019

With a background in both backend development and sys administration, I guess I could provide some help with the website's hosting

@KjellMorgenstern

This comment has been minimized.

Copy link
Member Author

commented May 20, 2019

The website is currently in a private repo, which is of course bad for colaboration. This was all for good reasons (trying to give Fritzing to some reliable constant financing), but it didn't work out as planned.
From the technical side, the webpage is written in python, and about 10 years old. Short term plan for now is to (re)build static parts of the page.

@vanepp

This comment has been minimized.

Copy link
Contributor

commented May 20, 2019

@KjellMorgenstern The main site web server looks to be having performance issues at the moment. It has always been slow to log in to the forums, but in the last week or so it has started to sometimes time out before responding with the login page. The forums (which I gather are on a different web server) seem to be fine.

@KjellMorgenstern

This comment has been minimized.

Copy link
Member Author

commented May 20, 2019

Yes, the forum is fine more or less, with an up to date stack. However the registration part is still on the old server.

@KjellMorgenstern

This comment has been minimized.

Copy link
Member Author

commented Jun 20, 2019

Update on the roadmap: May has passed, and we don't have an official 0.9.4 release, so we are behind the roadmap I set up two months ago.
The reasons:

  1. A lot of work is going into getting fritzing.org more reliable. This includes some fixes on the current server, but also a complete rewrite of the site.
  2. Also, we decided to establish a full continuous delivery system first, which is about to go live: PR #3488 . That means for each new fix a runnable developer version of Fritzing can be downloaded from github.
@vanepp

This comment has been minimized.

Copy link
Contributor

commented Jun 20, 2019

For me (and I expect most everybody else too) I'm happy to see progress (and there has been a lot!) A suggestion for the dev builds (if possible), I modify

src/utils/folderutils.cpp like this:

at line 144 change

QString path = QSettings(QSettings::IniFormat,QSettings::UserScope,"Fritzing_dev","Fritzing").fileName();

to

QString path = QSettings(QSettings::IniFormat,QSettings::UserScope,"Fritzing_dev","Fritzing_dev").fileName();

and at line 151

return dir.absoluteFilePath("Fritzing");

to

return dir.absoluteFilePath("Fritzing_dev");

This means the the dev build will use different user directories than 0.9.3b so both can coexist at the same time on the same system without affecting the other. When loading a dev version you can either use the Fritzing_dev directory as is (Fritzing will create it if it doesn't exist) or copy the Fritzing directory from 0.9.3b in to Fritzing_dev to make the dev version identical to your production version. I find this makes testing new versions much easier.

Peter

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
You can’t perform that action at this time.