Evernus [3.8 release] - the Ultimate Market Tool

There was a problem with database update in one of the last versions. You can remove it and it will be recreated properly or I can fix it for you.

2 Likes

i am on macos, deleting app didn’t help

1 Like

I meant deleting the database. If you want to keep your history, you can send it to me to fix it.

1 Like

ok, thought deleting app will clear all “tails”, deleting main.db helped (main.db is in “youusername/library/applicationsupport/evernus.com/db/” in case someone needs it)

New version is out and it’s the first one which starts to focus on ESI import. Historically, 3rd party apps only had old XML API available. This API is error-prone, has long cache timers and doesn’t support citadels at all. ESI, when finally arrived, solved some of those issues. Unfortunately, ESI is not complete yet – some endpoints are totally missing (like corporation ones), while some are very unstable. Evernus tries to use the stable ones to fetch more accurate data; currently those are: character info, assets (including in citadels) and market orders. There is support for wallet data, but the endpoint is too unstable to use.

When you first launch this new version you will be prompted for which API to use. If you wish to have more data, choose ESI. If you experience problems – switch back to XML API, or simply stick with it for now. New endpoint support will be added in the future.

Full change log:

[new] region+station presets for Market Analysis
[new] generating crash reports in an unlikely event of a hard crash
[new] some help tooltips
[new] type details in Importing analysis
[new] verbose logging to file
[new] median destination volume in Importing analysis
[new] mean absolute deviation in Importing analysis
[new] accepting $ in costs in new/edit custom cost dialog (e.g. for pasting from Excel)
[new] CSV import/export of custom costs
[new] possibility to switch to ESI import from XML API
[new] web lookup actions in context menus in Market Analysis
[fixed] errors when importing data from ESI without a character
[fixed] crash when authenticating ESI for unknown character
[fixed] missing parameters while setting destination in Eve
[fixed] not creating automatic item cost when wallet transaction cache timer hasn’t expired
[fixed] importing data for unpublished types
[fixed] crazy scaling of station profit axis in Reports
[fixed] rare race condition when importing citadels
[fixed] missing location from competing orders when citadels have not been imported yet (resulting in “no price data”)
[fixed] problems when updating from very old versions
[fixed] improper SSO auth window centring
[fixed] rare race condition blocking SSO auth for multiple characters
[changed] query string in ESI errors
[changed] updated links in About Dialog
[changed] improved application loading speed
[changed] ignoring orders already imported as fulfilled in Reports (skewing data)
[changed] new/edit custom cost dialog now focuses on type name
[changed] 119.8 database

Since I cannot get breakpad to compile I patched out breakpad in the CMake file, unfortunately the 2.4 release doesn’t compile under linux.

Hmm building breakpad for linux involved only using make for me. Nevertheless, why doesn’t it compile? I develop on both windows and Linux and each release builds fine with clang.

For anyone building from source: today’s upcoming release will require qt at least 5.8.

2.5 is out and it fixes a crash which was occurring in certain situations in the Importing tab. All changes:

[fixed] crash in Importing tab
[fixed] invalid quantity when importing blueprints from ESI
[changed] removed max width for station selection dialog

The OSX version is available.

I think what he is saying is maybe an item in last 2 monhts, sold off alot due to some event, like say, item x sold 300 pcs on day n. The monthly average would come out to 30. However, if someone didnt notice it was only on 1 day of the month, they may buy and seed a product that has no ~consistent demand.

I already implemented those new indicators, so I think everything is as requested.

Building Evernus fails with:

CMake Error at CMakeLists.txt:16 (find_package):
By not providing “FindBreakpad.cmake” in CMAKE_MODULE_PATH this project has
asked CMake to find a package configuration file provided by “Breakpad”,
but CMake did not find one.

Add -DCMAKE_MODULE_PATH=.

Yeah, noticed. Still fails with:

[  3%] Building CXX object CMakeFiles/evernus.dir/AboutDialog.cpp.o
In file included from /home/forlorn/Downloads/AUR/evernus/src/krojew-evernus-14ba1b6d9f32/AboutDialog.cpp:15:
In file included from /usr/include/qt/QtCore/QCoreApplication:1:
In file included from /usr/include/qt/QtCore/qcoreapplication.h:46:
In file included from /usr/include/qt/QtCore/qobject.h:54:
In file included from /usr/include/qt/QtCore/qmetatype.h:55:
In file included from /usr/bin/../lib64/gcc/x86_64-pc-linux-gnu/7.1.1/../../../../include/c++/7.1.1/map:60:
In file included from /usr/bin/../lib64/gcc/x86_64-pc-linux-gnu/7.1.1/../../../../include/c++/7.1.1/bits/stl_tree.h:72:
In file included from /usr/bin/../lib64/gcc/x86_64-pc-linux-gnu/7.1.1/../../../../include/c++/7.1.1/bits/node_handle.h:39:
/usr/bin/../lib64/gcc/x86_64-pc-linux-gnu/7.1.1/../../../../include/c++/7.1.1/optional:1032:27: error: use of class
      template 'optional' requires template arguments
  template <typename _Tp> optional(_Tp) -> optional<_Tp>;
                          ^
/usr/bin/../lib64/gcc/x86_64-pc-linux-gnu/7.1.1/../../../../include/c++/7.1.1/optional:451:11: note: template is
      declared here
    class optional
          ^
/usr/bin/../lib64/gcc/x86_64-pc-linux-gnu/7.1.1/../../../../include/c++/7.1.1/optional:1032:40: error: expected ';' at
      end of declaration
  template <typename _Tp> optional(_Tp) -> optional<_Tp>;
                                       ^
/usr/bin/../lib64/gcc/x86_64-pc-linux-gnu/7.1.1/../../../../include/c++/7.1.1/optional:1032:41: error: cannot use arrow
      operator on a type
  template <typename _Tp> optional(_Tp) -> optional<_Tp>;
                                        ^
3 errors generated.
make[2]: *** [CMakeFiles/evernus.dir/build.make:90: CMakeFiles/evernus.dir/AboutDialog.cpp.o] Fehler 1
make[1]: *** [CMakeFiles/Makefile2:68: CMakeFiles/evernus.dir/all] Fehler 2
make: *** [Makefile:130: all] Fehler 2
==> FEHLER: Ein Fehler geschah in build().
    Breche ab...

This seems to be a bug in gcc 7 with latest libstdc++. Gcc is not officially supported because of poor standards conformance for some time now. All I can say is that it builds with gcc 6, clang and visual studio.

Downgrading to gcc 6.3.1 worked. Thanks for your patience! I stopped to make patches a few years ago and haven’t coded much since.

New version is here with the first set of industry features – manufacturing analysis/planning. Before getting into the details, here’s the full list of changes:

[new] Manufacturing analysis tab
[new] option to turn off Breakpad integration when building from source
[new] importing wallet journal/transactions via ESI
[fixed] potential crash when deleting market orders
[fixed] opening main window on incorrect screen
[fixed] crash in Market Analysis graphs when Eve doesn’t send any item history
[fixed] infinite token refresh loop for ESI
[fixed] station select button not always properly filling initial station
[fixed] creating absurd numbers of ESI threads
[fixed] double changed message when selecting favorite location in Market Analysis
[fixed] rare crash after fetching ESI token for unknown character
[changed] improved whole market import speed

Manufacturing Analysis

This tab allows you to plan manufacturing operations with various setups to maximize profit. Despite looking complicated, the usage is pretty simple:

  1. Choose your source regions/station. This will be used to fetch prices for buying source components.

  1. Choose your manufacturing station. This will make Evernus use system cost index to more accurately predict manufacturing costs. You can leave this blank, but your costs will be skewed, potentially by a large amount.
  2. Choose your destination regions/station. This will be used to fetch prices for selling manufactured goods.
  3. Choose your source/destination price types. As in the Market Analysis, this allows you to specify if you want to buy/sell stuff from/to buy or sell orders. Evernus takes all taxes into account when calculating profit and tries to simulate buying/selling from/to existing imported orders. If your setup requires more materials than available, or you wish to sell more volume than existing orders allow, you will see warning icons for given item types.
  4. Set your manufacturing facility information: type, size, security status, rigs and tax. All of these impact manufacturing costs.
  5. Select desired output types. You can also import your current blueprints and have Evernus prepare the whole setup with them (note: with large amounts of blueprints it might take a long time).

  1. As soon as you do that, the main view will be populated with full production chains.

  1. Import data for current setup. This will import all the orders and cost indexes to correctly compute your data.
  2. You can quickly see what you need to manufacture your output. All required quantities are on the right of every item box; all related info is inside. Each item type can have its source, ME and TE changed, which will update all required component quantities, costs and profit in real time.

Note: when taking assets and then manufacturing, the required quantity is rounded to what will actually be produced. So if your current assets cannot cover a single run, there will not be any difference than simply manufacturing. When not manufacturing, required component quantities are always 0.

  1. For detailed information, you can always switch views to a compact tree of the whole setup.

On the bottom right you can see a quick summary of all costs/profits. Each box also lists detailed information for given item in given production chain. When you’re satisfied with your setup, you can create a bill of materials using the button on the top.

There are still a few things which are planned for this tab, e.g. corporation support etc. All of this and further industry tabs will arrive in the future.

A hotfix has been released to 2.7:

[fixed] crash when importing wallet transactions via ESI
[fixed] “(unknown)” character name in SSO authentication window

Some new errors were found and fixed in the latest version:

[fixed] crash when importing orders from citadels
[fixed] incorrect connection lines in manufacturing setup
[changed] improved manufacturing setup item adding speed by A LOT