RESTService calls base class methods by preference to derived class methods
Done via method a). Fix still in return-restprocess-object-refactor branch.
If you've imported monthly values, and then you set the export format to %Y-Q%Q, then the output file will have 3 entries per quarter, so that explains how the csv file above was generated. As to how you got to the .rvl file above, that takes some effort. One way, I imagine, is to import the above CSV file using the blank format, which imports the 4 quarters as Jan, Feb, Mar, Apr. Then if you specify the display format as %Y-Q%Q, you will get 3 entries for the first quarter, and one for the second....
When I imported Inflation_{USA} with the average operation, I got one entry per quarter, as you'd expect.
Ravel Basics 00 - Unable to make non contiguous selections on keyboard
I have gone through the codebase, and unified the behaviour of the control and meta keys, which should get around this Mac limitation. This is now released as 3.7.6 with a Mac build only (since it doesn't really affect the other platforms).
Note - in Javascript speak, the command key is called "Meta", so you also need to check the status of event.metaKey.
Some more googling - control click causes a context menu event. It is hardcoded into MacOSX, and cannot be remapped. Sigh. I will fix this sometime this next week.
Ravel Basics 00 - Unable to make non contiguous selections on keyboard
Just checked - control click doesn't even do anything on a Mac.
Or perhaps even better - what about this? We should try to collect these as "worked examples" somewhere.
There is a "master ravel", as shown on the "Publication tab", and it slices the remaining two axes: "store location" and "product category"
Note - I imported month and day of week data as string dimensions. Fortunately, these were correctly sorted. In theory, it should be possible to import these as time dimensions, and therefore sort them, but I noticed that the boost time parser we use had some difficulties in parsing data without years attached.
There is a "master ravel", as shown on the "Publication tab", and it slices the remaining two axes: "store location" and "product category"
Albeit, I'm not quite sure what a "slicer" is in Excel, but given the name, I suspect this precisely emulates the dashboard example.
Albeit, I'm not quite sure what a "slicer" is in Excel, but given the name, I suspect this precisely emulates the dashboard example.
Could you shed some light as to how the XL slicer is supposed to be used? In LibreOffice, I just get the following text: This shape represents a slicer. Slicers are supported in Excel 2010 or later.
I will get out another 3.8.0 alpha release towards the end of the week when I get home.
3.8.0-alpha.3 is before the bug was fixed. 3.7.4 has the bug fix. Semantic versioning only means that 3.8.0-alpha.3 precedes 3.8.0, not that it has any relation at all to any 3.7 releases.
Display axis size and total hypercube size in data selection tab
The idea I think we've agreed to here is to add the number of unique labels in each axis as another row in the data selection tab, along with the total product of all axes, rendered in red if exceeding the 64 bit address boundary. Should be done as part of the import form refactor started by Niels.
Resize of pub items starts from wiring tab size, not current size
Ticket moved from /p/minsky/ravel/637/ Can't be converted: _priority: 5SlightlyUrgent
Resize of pub items starts from wiring tab size, not current size
Just add them to a publication tab? 10 clicks? -- Dr Russell Standish Phone 0425 253119 (mobile) Principal, High Performance Coders hpcoder@hpcoders.com.au http://www.hpcoders.com.au
Abbreviated month format is there on the dropdown list (%b), but not day of week (%a) I had to look that up. Note - I got an import error on reading the time of day field (%H:%M:%S), so I had to set that column to ignore. It is slow to import, though. That is probably the unusual time format imports - %b and %a. What we need are time field splitting operations, and import just the full timestamp of each transaction. In this case, that would require merging date and time of day fields. Features that...
The index operation index refers to the value of the x-vector coordinate, not the index in the array. But then this should have worked :P
The index operation index refers to the value of the x-vector coordinate, not the index in the array. Bit then this should have worked :P
Integer called on real value
Isn't this already fixed in 3.7.4?
Import form reversion
Divide Operator Glitch
Allow operations to name their argument
Even if there was a moving average operator, you'll still need to get axis and window arguments right. I'm going to add a feature request for the operators to name their arguments. In this case "Argument" could be called "Window", and appear as such in the dialog. Delta operators could call their argument "delta".
Moving average operator
It looks to me like you copied a running sum operator that was summing along "Date" into a new situation that needs to sum along "Year". It looks to me like everything is running as it should.
The axis is called Year, not Date.
You need to specify a window size of 3 to get 1 2 3 3 3 3
Sort order not working
That lock (on OECD primary energy supply) is set to "none" sorting. Unlock it, apply forward sorting, and relock it, and it is all good.
No - it is not a 16 bit encoding.
It loads provided the column names are filled correctly. Will need to run this under a debugger to find out why it crashes when the column names are left undefined.
Are you guys using the latest version? (3.7.4). I think this one is probably fixed.
const qualified return types cause problems with -overload
UTF-16/32 support for CSV files
Crash on Loading Horizontal Data
Found a solution to prevent crashes or infinite loops on bad input data (trying to parse a UTF-16 file as UTF-8 is effectively bad data). And also added UTF-16/32 BOM detection and throw for now. Will add UTF-16/32 support as a separate feature ticket for consideration later.
Obviously crashing is not good. This file is not a CSV file, it is of the type "merged delimiters", where the delimiter is a space. There is an option within Ravel to handle that file. However, even worse , it is UTF-16 encoded, so Ravel will never be able to load such files. You have to convert it using XL or other spreadsheet programs that can handle UTF-16 and convert it to UTF-8. In time, we might add UTF-16 handling (big job, though), but for now, we do need to detect the format, and display...
error message upon launching
Changed the arguments to type double to prevent conversion issues at the JSON layer.
This issue also affects 3.7.3, and probably earlier releases. I shall get another 3.7 patch release out shortly fixing it.
On Sun, Aug 18, 2024 at 03:53:13AM -0000, TomScat wrote: 1) There is a browser (Firefox) running on the background. 2) Looking at the taskmanager it tells me that there are 8 apps running, 111 windows processes, and 148 Background processes. :-( 3) The console is the cmd window? I get the following feedback: C:\Users\<user> \AppData\Local\Programs\minsky> 05:46:16.179 > Async Rest API: minsky.canvas.renderFrame {parentWindowId:"1444592",offsetLeft:0,offsetTop:162,childWidth:1370.4000244140625,childHeight:545,scalingFactor:1.25}...
Were you doing something else other that just opening the application? I did that as a "smoke test" before releasing. Also, if possible, could you run it from the command line. Open up the "cmd" app by putting "cmd" in the search box/cortana/bing chat/copilot box - whatever Micorsoft are calling it this week. Then cd to c:\Users\<username>\AppData\Local\Programs\minsky and run "ravel".</username> There should be an exception reported on the console. It would be helpful to have the context around...
Merge Operator glitch
Actually not the locks either. I eventually noticed that GDP_{nom} was reporting a size of 310 whereas all the other locked variables were reporting 920. After a lot debugging to figure out why, and eyeballing the XML in the .rvl file, I discovered that GDP_{nom} has tensor data attached to it. Clearly, you must have imported a CSV file into it, then later changed it to a flow variable and attached it to a lock. This manifested a corner case bug, where the tensor data overrides the metadata (eg sizes...
I believe it is more a problem with the locks, actually.
Axes Wrongly Labelled
Latex2HTML rendered slice labels not rendering properly in Ravel widget.
You mean like this? Seems to work fine to me.
Add rollback facility to plugin downloader
Investigate if 20px offset required for MacOS can be solved by using a different event field
On Tue, Aug 13, 2024 at 06:24:20AM -0000, Steve Keen wrote: I'm only getting Ravel 1.3.0 when I choose Upgrade. Same here. Not sure why the build process hasn't updated it to 3.6.1. Ran out of time today, so I'll look again tomorrow. -- Dr Russell Standish Phone 0425 253119 (mobile) Principal, High Performance Coders hpcoder@hpcoders.com.au http://www.hpcoders.com.au
Body limit exceeded
Body limit exceeded
Niels fixed this one by implementing Javascript side downloading of URLs.
On Mon, Aug 12, 2024 at 10:15:10PM -0000, Steve Keen wrote: Let's go for the parameter edit then. Can you bump it up to 10? Done. Version 1.3.1. Click "Upgrade"... -- Dr Russell Standish Phone 0425 253119 (mobile) Principal, High Performance Coders hpcoder@hpcoders.com.au http://www.hpcoders.com.au
Exploit html5_canvas.cpp for emscripten supported graphics
It's not really worth it. It's not a professionally maintained library, rather more a proof of concept that hasn't seen any updates since 2020 (likely a COVID project). I'd rather just extend the class I use in Ravel.
On Mon, Aug 12, 2024 at 09:07:49AM -0000, Steve Keen wrote: Yeah, but now with the improvements we made to axis labelling and such in the last year, six is no longer the maximum. I'd say it's about ten. Can that parameter value be changed in the code? At some point, we could make it a user-option, but in trying to show off Ravel in social media posts, the faded display is more of a hindrance than a help. Of course it is a parameter that can be easily changed to another fixed value. Making it a user...
On Mon, Aug 12, 2024 at 07:24:01AM -0000, Steve Keen wrote: OK, but I have to sheepishly say... that I think my idea of a "greyed out" Ravel when there are more than six dimensions was a mistake--or rather a relic of when the angles of the axis labels and the text clashed with each other. This is now an annoyance when I load the BIS debt data for a video, since it come in as seven dimensions. I have to reduce by at least one dimension before what a Ravel looks like is obvious in a recording. Could...
It's a bit more doable. We do, of course calculate the hypercube size and show an error message when the 64 bit limit is breached. Now that we're reading the whole file in during the metadata specification stage, we can update a display of the hypercube size, and display it in red when it exceeds 2^64.
Investigate cling as a possible scripting environment (replacing TCL)
We've gone with python!
Greyed-out image of Ravel on load
We doing this via an exemplar type, borrowed from the ravelation website.
As I mentioned in my email response, I'm not convinced this is such a good idea. I'm inclined to think the solution will have more to do with database backing, where one can extract the slice or rollup desired using the Ravel widget, without having to worry about the 64 bit hypercube limit.
Any dimension with only one entry should obviously be set to ignore; This happens now - any axis with a single slice will be removed from the hypercube on loading anyway, regardless of whether the user set it to ignore or axis. Those are not the problem.
Negative which should be positive
Actually maybe hyperinflation is the explanation. In Nov 2023, there were 4.21 E 12 marks to the US dollar. In 1924, the Weimar republic introduced a new currency (the RentenMark - translates as Pensioner's mark), which would have rebased the GDP series at that point. So you'll just have to remove the 1924 figure from your series, as it is not meaningful to compare with 1923.
The change operator is working correctly. The data has a bodgy value for 1923 - 1E13. It's there in the CSV file. A number that huge couldn't be explained by the hyperinflation going on at that time, I don't think, assuming GDP was being denominated in marks.
The tabs version is still in alpha release. No, I haven't had any further contributions from Niels, and was waiting on that. I did take a quick look at what you were asking for, and it looked like a bit of work, so I didn't pursue it for the current release. I suspect Niels though the same. I'll do a merge of the current 3.6.1 release into the development branch, and release another alpha shortly.
Weird toolbar rendering every so often
Mac toolbar rendering is slightly blurry
Investigate if 20px offset required for MacOS can be solved by using a different event field
Mac issues
make on Mac requires MAC_OSX_TK=1 flag set
Seems to load fine and work on Linux, on latest (3.6.1). Maybe try the new version?
Try fold expressions in classdesc::functional
Done as much as we can - this only partly worked.
Provide variadic versions of And and Or
You've scaled the legend by a negative value (see Options, Legend font size). Probably can't stop you entering a negative value there, but we could make negative values not allowed when resizing the legend by mouse.
Thanks for raising this ticket. I actually noticed that whilst watching your presentation on YouTube. Its a casualty of when I swapped how the axes display on 2D sheets to match Ravel's orientation. Not sure what the deal is with the faded axis marker...
Actually - there was slightly more to it - rendering the variable attached to the difference operator was also throwing, so I've reorganised the try/catch blocks in VariableBase::draw as well.
On Mon, Jul 15, 2024 at 07:45:53AM -0000, Steve Keen wrote: Yes, but what happens if we have two time series then, one with something that fits the ISO standard and one Quarterly? Will they be treated consistently, or will one bugger up the other? They will be treated consistently. At import, you'll need the correct format for each series (blank in the first, %Y-Q%Q in the second). Internally, they are represented by ptime objects, and interpolation means the two series can be mixed and matched....
Invisible Wires
The error was caused the axis not being specified on the difference operator. I have added try/catch blocks around each individual widget's rendering to make the remaining items rendered properly. I've checked that an error message is posted when pressing "reset"/"recalc". I think that is an adequate solution, and the extra overhead due to try/catch blocks should be minimal.
AFAICT, quarterly data is just plain non-standard, and has to be handled by a user specified format string, as we do. The only standard form is ISO data format, which we handle in greater generality with the "blank" format string.
Wires disappear because an exception is thrown drawing one of the widgets. Wires are drawn after widgets, and groups after that. If an exception occurs, then the remaining drawing is aborted. But just what widget is causing grief here I won't know until I get a chance to run this under a debugger.
Plot formatting without date formatting
Difference operator error