-
Notifications
You must be signed in to change notification settings - Fork 606
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
[meta] Blog: technical changes to PP source code #1914
Comments
Today's changes update the master branch to the 2020-12 release of Eclipse (4.18). Here are some things to note:
A couple of more things are outstanding. For example, the themes have changed and need fixing. If you notice other changes, please let me know. |
Hi @buchen Good idea with this mini-blog. Perhaps I just need to update imports somehow, but I honestly don't know how :-( |
🤔 I would start looking at three things:
|
The problem is: this launch configuration is specific to my macOS platform. You would have to "fix it" for your Windows platform (open the Launch Configuration and on the "Plug-ins" tab select "Add required Plug-ins"). This is actually the reason for #1913 - it should create launch configurations independent of the platform. Alas, that is where the missing Your Java Version looks fine. |
Perhaps rename it "... (MacOS)" then? Or are you saying with #1913 this should also work for windows? |
Yes, that should work for Windows too (as it is dynamically resolving the dependencies). But first we need to get it working. Very strange that offers antRunner as a proposal, but then errors on it. |
After removing |
Hi, |
Lol, amazingly this works. Seems like a bug with Ecplise? |
You can build PP fully with mvn only. But I assume you might not be able to build the Linux and macOS versions on Windows. But other than that, I would think you can build the full distribution on Windows as well. To check the build, I run from the command line
This will not build all products - in particular not the "distributions" which includes the Java Runtime. To do so, run:
You should find all ZIPs in the And, yes, I moved to Github Actions a while ago. I fixed the README file. If you check the workflow definition, I am running three builds
There are a couple other flags in the build - which I use locally to sign the build result: with a Java Code Signing certificate and an Apple developer certificate.
I am not using this file at the moment. The idea was to have an EXE installer instead of a ZIP on Windows. However, I had troubles with the administration mode and the updates. I could try this again, though. At the moment, the code is checking if the user has write permissions to the install directly and asks the user to run PP "as administrator" if not (only for the update, of course). |
Thanks a lot! But running |
@damarvin Well, obviously I am not testing the build on Windows... 🙃 Every once in a while I copy the Windows build result to a virtual machine and run PP there. I just assumed the build runs on Windows as well... You could try running it with |
Unfortunately this seems to be a bug in apache/maven-enforcer. Already
fails with
logs the Windows path correctly:
Others gave up here as well: quarkusio/quarkus#6335 :( |
Just to inform, in Windows, with @buchen You might want to update the main readme.md. |
FYI, with #1932, the precision of shares and quotes would be added to 8 digits. |
With the latest commit, I have refactored the "information pane" in the views - the lower part where the historical prices, transactions, security chart, etc. are shown. I wanted to make the detail pages re-usable across multiple views. The area can be hidden with Strl-L (or Command-L on macOS). For example, if you click in the holdings chart on one of the pies, details for the security are to be shown. The same is available in the statement of assets view now. If you sync your local project to the latest commit, please give it a go and test it. I had to shuffle quite some code around which makes it easy to introduce bugs. |
Have a look at #2363 - I have drafted an implementation using protocol buffers to the store the data in a binary format. I knew XML was slow, but I did not expect it to be that slow. |
PP dependencies are now updated to Eclipse 2021-09 release. This allows us to support the Apple Silicon M1 build. You have to update the target platform in your Eclipse installation |
With commit 9f695b3 I have updated to Eclipse 2022-03. The basic steps to update your workspace:
Please let me know if you run into problems. There are new versions of libraries and I had to adopt the Apache HTTP component which is used for downloading |
For me this warnings disappeared after closing and reopening the "portfolio-app" project in eclipse. Looks fine with MacOS and Wndows 10. |
I have created a new branch feature_java17 move PP to Java17. It includes updates to Java17, Eclipse 2022-12, and Tycho 3.0.1. The two big changes are:
|
Hello @buchen, |
The error message says:
That is exactly the new project I created in order to refactor the test classes. It was necessary, because otherwise the name.abuchen.portfolio bundle is re-exporting test classes which led to errors. Select in the menu "File" -> "Import..." -> "Existing projects into workspace" -> navigate to your local directory where you have the git checkout -> pick "name.abuchen.portfolio.junit" |
There are no embedded projects in the workspace... Edit: |
FYI: With f663328, the google Protobuf library has been updated. Make sure you update your project configuration by
|
@OnkelDok @Nirus2000 - other window testers: I have extended the dashboard to show a "jump to view" button only if the mouse hovers over the chart. See the short video below. It is only in the latest commit on master and (for now) only for the new dividend charts (add widgets -> earnings -> earnings per month/year/quarter). Can one of you test how this behaves on Windows? Bildschirmaufnahme.2023-06-01.um.17.27.38.mp4 |
Here a video of my test: 2023-06-01.19-57-55.mp4The style in darkmode is not the same as that of the permanent button of the performance diagram. |
Thanks @OnkelDok for testing. I'll try to fix the style in dark mode. The delay is necessary because the mouse move listener is attached to multiple widgets (the chart, the plot area, the title, the composite). If I do not add the delay, it would hide the button when moving from the plot to the chart - and that results in flickering. |
Eclipse Core has been updated to 4.27 (March 2023) version. Same procedure as every time:
|
Please checkout #3458 about transferring the repository to the portfolio-performance organization:
|
The repository has been transferred (noticed the new URL in your browser). I updated my local clone by running
Depending on your setup, you'll need to replace the remote name with the one you use in your copy. |
FYI, I have updated the Orbit dependencies (from the March 2022 to the May 2023 repository) with commit e30de80 Same procedure as every time:
|
With merge #3487, PP is using Tycho 4.x. |
I have updated to the 4.29 Eclipse version (release 3 September 2023). Same procedure as every time:
|
Out of an forum conversation with @OnkelDok, I have create a new tag to categorize issues: [meta]. The idea is to use for all meta discussions (how do we want to work? How to prioritize certain changes? Does it make sense to implement something like this?) which are not on a level of a bug or concrete feature. |
FYI, with this change 5aac558 the target platform has been updated. You need to reload the target platform and re-generate the launch configurations. I plan to push the update to Eclipse 4.30 soon (which then will require the same procedures) |
With commit 6a10792 the target platform has been updated to Eclipse 4.30. As always, you need to reload the target platform and re-generate the launch configurations. |
@buchen: Long time since I compiled and started PP via eclipse. When I try to run I get this message: And when I
Any idea what I can do to get this working? Thanks a lot. |
Pinging contributors here: I don’t know if you noticed, but I finally published the mobile app. Check out this link with some screenshots: https://www.portfolio-performance.app/ As it turns out, if you only use a noreply email in the commit messages, I cannot reach out to you directly. I would like to give free one year subscriptions to anybody who has contributed code, translation, documentations to the open source (desktop) project. Please drop me an email with your user, your device (iPhone, Android) and the user id from the diagnostics page within the app. |
The first screenshots are error from the Eclipse installation itself. To be honest, it reads a little like the installation itself is corrupt. If JDT (Java Development Tools) reports issues, then this is not good. Maybe consider a fresh install?
To my understanding, the bundle I think the rest can then easily be follow-up errors - if one bundle is not activated, then some of the other are not either. And then the UI bundle is not active (only the bootstrap bundle which includes the menu). |
I have added aggregate rows (header and/or footer) to the Performance -> Securities view. The aggregate rows show the sums of relevant columns (i.e. where a sum of values makes sense). If you can test and provide feedback, I'd be thankful. |
Looks good! |
FYI, the Java21 branch is merged. Java21 is the current long-term support version of Java. With the change, I have also updated the Eclipse Framework to the 2024-09 version (Eclipse 4.33). Eclipse itself requires Java 21 as well. Make sure you have a Java 21 JDK installed locally for development. Personally, I am using the Azul distribution because that is also the embedded Java Runtime (= the distribution of PP that includes a Java runtime). If run into issues, please let me know. |
Hello,
Does this mean that we need to update Eclipse to this version ? I have Eclipse 2023-12 (4.30).
Is this also applicable with this change ? |
Yes and yes 👍🏻 |
As more people are contributing to the code base of PP, I will use this issue to "blog" about technical changes to the source code. It is not meant to discuss features, but library upgrades, changes to the target platform, etc.
The text was updated successfully, but these errors were encountered: