Message Boards Message Boards

9
|
31188 Views
|
44 Replies
|
63 Total Likes
View groups...
Share
Share this post:

[LiVE] Request for suggestions for a livestreamed "Bugs Review" event

Posted 5 years ago

Update: This event is scheduled for 9/6/2019 at 3:30pm US Central timezone.

We are planning to have our live-streamed "Bugs Review" event soon, where Stephen Wolfram will discuss issues (bugs: incorrect behaviors, crashes, hangs, performance issues, etc.) that you care the most about. If you plan to attend and to help prepare for this event, please reply to this post with issues in the Wolfram Language (including the Notebook Interface) you think are the most important to discuss.

Thanks!

POSTED BY: Arnoud Buzing
44 Replies

Because I find it consistently disturbing: I would like that SpherePoints would work in a reliable way, e.g.:

Grid[{#, Show[Graphics3D[{Opacity[.2], Sphere[]}], 
     ConvexHullMesh@SpherePoints[#]]} & /@ {10, 13, 50}, Frame -> All]

enter image description here

POSTED BY: Henrik Schachner

10 and 15 are presets. Non-presets (including 13) follow the following formula:

 iSpherePoints[n_Integer] := Block[{offset, r, z, NKSSpecialFunctions`SpherePoints`Dump`\[Phi]},
    offset = 2. / (n + 2);
    z = ((Range[n] * offset) + offset / 2.) - 1;
    r = Sqrt[1 + -(z ^ 2)];
    NKSSpecialFunctions`SpherePoints`Dump`\[Phi] = Range[n] * N[GoldenAngle];
    Transpose[{r * Cos[NKSSpecialFunctions`SpherePoints`Dump`\[Phi]], r * Sin[NKSSpecialFunctions`SpherePoints`Dump`\[Phi]], z}]
 ];

which works very nice for large n.

POSTED BY: Sander Huisman

Dear Sander,

thank you for your quick response and for sharing your interesting function (but this very procedure should not be necessary)! Already some years(!) ago we had a conversation about this. My point here is that it irritates me that for such a long time it is not possible to correct this obvious misbehavior of an "official" function. I do not regard the solution to this problem as very complicated. Maybe this post might serve as a slight "nudge".

And - as a side note - even if it works I find the distribution of points quite boring (i.e. the pattern is too simple) if compared to alternative methods, e.g.:

ptsMH = Chop@*First /@ MeshPrimitives[DiscretizeGraphics[Sphere[], MaxCellMeasure -> .05], 0];
ptsSP = SpherePoints[Length[ptsMH]];
Graphics3D[Tube[#[[Last@FindShortestTour[#]]], .1], ImageSize -> Medium] & /@ {ptsSP, ptsMH}

enter image description here

Best regards -- Henrik

POSTED BY: Henrik Schachner

I mean, we could make an WFR function that does it better and with different metrics… Like most uniform area, or smallest standard deviation between angles of nearest neighbours, or …

–SH

POSTED BY: Sander Huisman
Posted 4 years ago

@Arnoud Buzing hi there!

Testing "12.1.0 for Microsoft Windows (64-bit) (October 6, 2019)"

The quality of the copied graphics is very poor.

Copying directly with the screen capture looks like this. enter image description here

Using the [copy graphic] option by right click, looks like this.

enter image description here

POSTED BY: Diego Zviovich

Where do you paste it?

POSTED BY: Sander Huisman
Posted 4 years ago

Microsoft OneNote for Office 365 MSO (16.0.11328.20420) 64-bit

POSTED BY: Diego Zviovich
Posted 5 years ago
POSTED BY: Diego Zviovich

GeoRegionValuePlot doesn't normalize the color function as expected. I would like to make multiple maps (for different dates) and have the scale be consistent from map to map. For example, the scales on these three maps show up differently with changes to one state's value.

Row[{ countydata = <| Entity["AdministrativeDivision", {"Georgia", "UnitedStates"}] -> 1/100, Entity[ "AdministrativeDivision", {"Florida", "UnitedStates"}] -> 30/100, Entity[ "AdministrativeDivision", {"SouthCarolina", "UnitedStates"}] -> 50/100, Entity[ "AdministrativeDivision", {"NorthCarolina", "UnitedStates"}] -> 90|>; GeoRegionValuePlot[countydata, PlotRange -> {0, 1., {{-88, -70}, {23, 42}}}, ColorRules -> {0. -> Transparent, 100. -> Black}, ColorFunction -> "NeonColors", ColorFunctionScaling -> False, GeoRangePadding -> Quantity[300, "Kilometers"], PlotLegends -> Placed[BarLegend[Automatic, LegendFunction -> "Frame", LegendLabel -> "Values"], {0.85, 0.40}], GeoLabels -> (Tooltip[#1, #2] & ), ImageSize -> 300],

countydata = <| Entity["AdministrativeDivision", {"Georgia", "UnitedStates"}] -> 20/100, Entity[ "AdministrativeDivision", {"Florida", "UnitedStates"}] -> 30/100, Entity["AdministrativeDivision", {"SouthCarolina", "UnitedStates"}] -> 50/100, Entity["AdministrativeDivision", {"NorthCarolina", "UnitedStates"}] -> 50/100|>; GeoRegionValuePlot[countydata, PlotRange -> {0, 1., {{-88, -70}, {23, 42}}}, ColorRules -> {0. -> Transparent, 100. -> Black}, ColorFunction -> "NeonColors", ColorFunctionScaling -> False, GeoRangePadding -> Quantity[300, "Kilometers"], PlotLegends -> Placed[BarLegend[Automatic, LegendFunction -> "Frame", LegendLabel -> "Values"], {0.85, 0.40}], GeoLabels -> (Tooltip[#1, #2] & ), ImageSize -> 300],

countydata = <| Entity["AdministrativeDivision", {"Georgia", "UnitedStates"}] -> 30/100, Entity[ "AdministrativeDivision", {"Florida", "UnitedStates"}] -> 30/100, Entity[ "AdministrativeDivision", {"SouthCarolina", "UnitedStates"}] -> 50/100, Entity[ "AdministrativeDivision", {"NorthCarolina", "UnitedStates"}] -> 50/100|>; GeoRegionValuePlot[countydata, PlotRange -> {0, 1., {{-88, -70}, {23, 42}}}, ColorRules -> {0. -> Transparent, 100. -> Black}, ColorFunction -> "NeonColors", ColorFunctionScaling -> False, GeoRangePadding -> Quantity[300, "Kilometers"], PlotLegends -> Placed[BarLegend[Automatic, LegendFunction -> "Frame", LegendLabel -> "Values"], {0.85, 0.40}], GeoLabels -> (Tooltip[#1, #2] & ), ImageSize -> 300]}]

I've tried changing GeoFunctionScaling to no effect. SAWilkus@gmail.com

Attachments:
POSTED BY: Stephen Wilkus
Posted 5 years ago

If you filter mathematica stackexchge for posts having the tag “bugs” you get 1529 posts with 96 from this year. Have these been reviewed by Wolfram?

POSTED BY: David Keith

I would like to see how to suppress the pink-box-of-gloom since Mathematica will behave properly but, someplace in the inner workings, warnings get spawned ... apparently by the front end ... without any ability to suppress them even though things seem to be fully functional.

Attachment

Attachments:
POSTED BY: Mark Kotanchek

Fontsize->Large does not work when a PlotLabel is applied

The error that is generated is: "The specified setting for the option FontSize cannot be used."

enter image description here

POSTED BY: Martijn Froeling

Net Train cannot handle large datasets in V12 while it was fine in V11 CASE:4268171

identical neural nets with identical data causes a memory overflow somewhere in the internal fucntions.

V11 enter image description here

V12 enter image description here

POSTED BY: Martijn Froeling

Long-unfixed graph bugs

What's common in the below bugs is that they have stayed unfixed even after repeated reports.

Wrong result bugs

Here's a list of some wrong-result graph bugs. I won't repeat the details as all of these have been reported in the past.

This is the most serious class of bugs because wrong results are returned silently. A crash is not as bad because we can immediately see that something went wrong. When the result is just incorrect, we might continue working, maybe even publish a paper, without realizing what happened.

  • FindVertexCut[g, s, t] typically returns wrong results
  • FindMaximumFlow with vertex capacities returns not only wrong, but also random results
  • FindKPlex[g, k] returns wrong results for directed graphs for k > 1
  • Edge properties are not set on a graph if the edge is specified with a different orientation in the property list. Graph[{1<->2}, EdgeWeight -> {2<->1 -> 1.23}]
  • RandomGraph[DegreeGraphDistribution[...]] does not sample uniformly.

Other long-standing bugs

  • KaryTree, StarGraph and some other functions return a graph with a broken internal representation, whose properties can't be changed further using Graph or Graph3D. Graph3D[KaryTree[5], GraphStyle -> "BasicBlack"] (However, a simple Uncompress@Compress[graph] fixes this by reconstructing the internal representation.
  • Vertex and edge labels are cut off in any graph style/theme except the default. Example: GridGraph[{5, 5}, GraphStyle -> "BasicBlack", VertexLabels -> Automatic].
  • There is no documented way to remove EdgeWeights from a graph once added. EdgeWeights affect the output of many graph functions. Sometimes we might want to compute an unweighted distance on a weighted Graph expression. Repeated requests to fix this go back to 2012!!
  • Export creates GraphML files that do not follow the standard and cannot be loaded by other software.
  • VertexLabels -> "Name" or VertexLabels -> "Index" is mishandled when exporting graphs to most formats (e.g. Graphlet, GraphML, GXL, etc.)
  • Weighted graphs with (EdgeWeight) fail to export to the Graphlet format.
  • Regarding the above: currently, Mathematica's export is unusably buggy for all graph exchange formats which support properties. All of them have at least one deal-breaking bug (see above).

Other serious bugs (I'm not aware of these having been reported a long time ago)

POSTED BY: Szabolcs Horvát

DegreeGraphDistribution misbehaves

DegreeGraphDistribution is effectively undocumented. There is no clear statement in the docs about what it is supposed to mean. I can't even decide if certain behaviours are bugs or not.

(Of course, using our common sense we can see that these behaviours are clearly bugs. However, when reporting issues with Graph it is often a requirement to stick to the letter of the documentation.)

However, after a lot of guesswork, I suspect that:

  • It should sample uniformly from the set of graphs with a given degree sequence. Confirming of correcting this was outright refused by the developer when contacted through support. A simple test shows that it does not in fact sample uniformly. I can't even decide if this is a bug because of no documentation and no support (perhaps the sampler is meant to be approximately uniform only?)

  • For non-graphical sequences, it samples non-uniformly (not even approximately) from non-simple graphs. Again, answers to any questions about this were plainly denied. A typical answer is "no information is available".

  • Without a proper definition, I am completely lost when trying to figure out how this should work with functions like GraphPropertyDistribution

  • The syntax for directed graphs is again undocumented

The situation has been like this for many years, and nothing has changed after many reports. This is symptomatic of how problems with Graph are handled in general.

Related: https://community.wolfram.com/groups/-/m/t/1756560?p_p_auth=QIf48N5F (Note: still no response.)

POSTED BY: Szabolcs Horvát
POSTED BY: Szabolcs Horvát
  • In my opinion NumericArray would be very useful - if one could fully use it, see e.g. this discussion;
  • The frequent occurrence of functions qualified as "EXPERIMENTAL" (in particular in v12) unsettles me a bit;
  • I would like to see a consistent behavior when plotting functions with quantities (there was a former post about this I cannot find), e.g.:

    f[Quantity[x_, "Meters"]] := Quantity[x^2, "Joules"]
    
    Table[f[x], {x, Quantity[0, "Meters"], Quantity[10, "Meters"]}] (* does work *)  
    Plot[f[x], {x, Quantity[0, "Meters"], Quantity[10, "Meters"]}]  (* does not work *)
    (* possible workaround: *)
    ListLinePlot[Table[{x, f[x]}, {x, Quantity[0, "Meters"], Quantity[10, "Meters"]}], AxesLabel -> Automatic] 
    
POSTED BY: Henrik Schachner
Posted 5 years ago

Fit also fails with quantities. See this for an example.

POSTED BY: Rohit Namjoshi
Posted 5 years ago

Plot should pass on warnings from Interpolating Functions when they are given arguments outside their range.

POSTED BY: David Keith
Posted 5 years ago

Case 3780236: Periodogram does not respect SetOptions.

POSTED BY: David Keith
Posted 5 years ago

Wolfram Workbench throws errors for single stepping unless the code contains at minimum an undocumented number of lines.

POSTED BY: David Keith
Posted 5 years ago

Submitted as Case 1661658 and submitted as an incident response by Lin Geo at Tech Support :

OutputResponse applied to a TransferFunctionModel provides an incorrect response, apparently due to a failure to converge to the correct solution. A correct output can be produced by employing the undocumented option Method -> {"NDSolve", MaxStepSize -> stepSize} for an appropriately small step size.

The entire suite of control system tools at least needs better documentation.

POSTED BY: David Keith
Posted 5 years ago

[CASE:4286463] Error with Histogram

POSTED BY: Diego Zviovich
Posted 5 years ago

There is also an ever-growing list of issues with various import/export formats (e.g. all the issues with PDF exporting,...). Would be nice to see this addressed at some point, especially since the documentation claims support for hundreds of formats. Many of the importers/exporters are also working with ancient versions of the formats, often not supporting the latest features.

POSTED BY: Lukas Lang

Some explicit examples would be useful here because there are 10s of formats…

POSTED BY: Sander Huisman

Don't forget the Graph bugs that Szabolcs Horvat has been posting about. They are important to lots of MM users. https://community.wolfram.com/groups/-/m/t/1321057

POSTED BY: l van Veen

Related to Kirk's post above, MMA has a huge shortcoming with 2D plotting. In addition to zooming and panning, The plot functions fail on large datasets. For example, I plotted a 30 million point data set in MATLAB and it was fine. I could zoom in and out, etc. I plotted a 30 million point dataset in Wolfram SystemModeler and similarly had no issues. I tried a 30 million data point set in MMA and brought the system to its knees. I had to write a decimation program (based on a stackexchange post) that automatically "Enveloped" the data, reducing the number of points in the plot. MMA should do something like this automatically (or take an option like "AutoDecimate") while allowing zooming in (with each zoom you can then increase the resolution to combine detailed viewing with fast interface response).

Regards,

Neil

POSTED BY: Neil Singer

In support of Neil comment about issues with large sets of data, I have many notebooks that include plots and are affected by this [CASE:4225009]. These open fine in v11.3 but crash on v12 (Windows) upon opening. I was able to construct a command to demonstrate the issue:

(* Save your docs before running this on v12 *)
ListLinePlot[{
  Table[{t, RandomReal[]}, {t, 0, 1, 0.00005}], 
  Table[{t, RandomReal[]}, {t, 0, 1, 0.00005}]},
PlotStyle -> {Dashing[{Small, Small}]}]

The other big issue on my radar is the reliability of asynchronous network functions. In particular URLSubmit [CASE:4026293]. For this reason in my application I am still using URLFetchAsynchronous which it is not supposed to be used for new developments as I understand is deprecated and also less convenient than URLSubmit. More details at:

https://mathematica.stackexchange.com/questions/167357/can-i-trust-urlsubmit

POSTED BY: Gustavo Delfino
Posted 5 years ago

This one is the posted solution to SW's EIWL exercise 22.13.

NearestNeighborGraph[
 Table[Rasterize[Style[FromLetterNumber[n], 20]], {n, 26}], 2, 
 VertexLabels -> All]

Reported to WRI July 31, 2018: CASE:4093797. Not fixed in 12.0. I don't think it is a serious issue but SW may think otherwise since it is in his book.

For this one I got an email from support on Aug 8, 2019

[CASE:4287750] The current Mathematica addresses an issue you reported

In February 2018 you reported an issue with Mathematica wherein GeoHistogram was failing with weighted data in certain instances. We believe that the issue has been resolved in the current 12.0 release of Mathematica.

It is actually not fixed in 12.0. I consider this to be a much more serious issue. User reported an issue with an attached notebook to reproduce it and receives an email that it has been fixed, but it has not been fixed. Clearly something is broken in WRI's issue management / QA process.

I also posted the example that fails on MSE.

POSTED BY: Rohit Namjoshi
Posted 5 years ago

Hello Rohit,

Thank you very much for bringing the incorrect notification on a supposedly fixed GeoHistogram issue to our attention.

Reviewing all available information, it turns out that GeoHistogram had two very similar problems in Wolfram Language 11.3, in both cases returning the same error message. The first one was of type

GeoHistogram[WeightedData[...]]

for certain WeightedData arguments, while the issue you pointed out was of type

GeoHistogram[WeightedData[...], GeoRange ->...]

The first problem was addressed in version 12.0, while the second one persists, unfortunately.

Tracing back internal communication and records, it appears that we erroneously conflated the two issues while trying to determine an essential example for the latter.

Furthermore, just before informing you about the supposed fix, we apparently only double-checked examples of the first kind instead of your original example, leading to the incorrect note we sent.

I sincerely apologize for this mixup and for sending you wrong information. We are now working on strengthening our related processes, so you will find whatever we send to be correct and trustworthy. Furthermore we will ask the according development team to prioritize addressing the issue, if possible.

Thank you very much again for bringing this mistake to our attention.

Sincerely,

Peter Fleck

Manager, Wolfram Technology Group

POSTED BY: Peter Fleck
Posted 5 years ago

Hi Peter,

Thank you for explaining the reason for the erroneous email that I received. I think WRI would benefit from making the issue/bug management process more transparent and exposed.

The MSE community has discussed this here. Patrick Scheibe has a well thought out post on how WRI and its users could benefit from this.

I look forward to WRI seriously considering these options and implementing a better and more transparent issue/bug management and QA process.

Rohit

POSTED BY: Rohit Namjoshi

Rohit, we're actually working toward an open issue tracker for Wolfram Language issues. Would you be interested in joining our prerelease program, so you have early access to this issue tracker?

POSTED BY: Arnoud Buzing
Posted 5 years ago

Hi Arnoud,

That is really good to hear. Yes, I would be interested in joining the prerelease program.

Thanks, Rohit

POSTED BY: Rohit Namjoshi

Another fun one:

(*(*(*invalid=Union[invalid]*)*)

try to un-comment that by selecting it and pressing CMD + / …

POSTED BY: Sander Huisman
Posted 5 years ago

The false-positives of the Dataset type system can be quite annoying, especially since it fails with a single Failure object instead of the usual messages. One frequent issue for me is the fact that variables can't be used as Part specifications:

Dataset[{1, 2, 3}][Table[#[[i]], {i, 3}] &]
(* Failure["i is not a valid Part specification"] *)
POSTED BY: Lukas Lang
Posted 5 years ago
POSTED BY: Carl Lange
Posted 5 years ago

And another one with the Geo functions, GeoHistogram fails with WeightedData and GeoRange:

GeoHistogram[
 WeightedData[
  CountryData["UnitedStates", 
   "LargestCities"], #["Population"] &], 
  GeoRange -> 
  Entity["AdministrativeDivision", {"California", "UnitedStates"}]]

I think the WeightedData case is used more often than the "list of GeoPositions" case (at least for me) and it would be great to see this fixed. Related: https://mathematica.stackexchange.com/questions/190697/geohistogram-with-georange-fails-with-weighteddata/190704#190704

POSTED BY: Carl Lange
Posted 5 years ago

Not directly a bug, but the GeoTIFF support in Mathematica could be much improved. You can't even get the bounding box information from GeoTIFFs when imported at the moment and this is pretty sub-par. I think much of the functionality was written before the Geography functions came to be and it could really use an update. It seems as though the GeoTIFF support is written with DEMs in mind and no other use case, which is certaintly not the way things are anymore. I use GeoTIFFs on a daily basis and end up using Python and GDAL to process them because it's easier - one of the few places in my life I don't like to use Wolfram Language! (Same goes for GeoJSON, although this is significantly better than the GeoTIFF format)

POSTED BY: Carl Lange
Attachments:
POSTED BY: Sander Huisman
Posted 5 years ago

I'd enjoy seeing dynamic pan and zoom with 2d plots, similar to what you can already do with the 3d plots. It would be invaluable when exploring large datasets, without having to hand-roll something with Manipulate and PlotRange.

POSTED BY: Kirk Klobe
Posted 5 years ago

I can work around most little bugs I run into in the core Kernel itself--and Kernel bugs just make me reimplement functionality, which means I have a more robust implementation that I understand in the end--but there are many things in the FE I can't work around, almost entirely related to Dynamic and its brethren as there is no way to really robustly control the FE from the WL at the low level (even using undocumented functions).

I'd really like a discussion, then, of the generally poor performance of Dynamic and the crazy work-arounds one has to do to make it clean.

Here's one such issue. First I make a Dynamic which uses a TaggingRule to listen for a specific key:

Dynamic[
 {
  RandomReal[],
  CurrentValue[
   EvaluationNotebook[], 
   {TaggingRules, "test"}
   ]
  }
 ]

Then if I update a completely unrelated key, that Dynamic gets updated, e.g. by:

CurrentValue[
  EvaluationNotebook[], 
  {TaggingRules, "not-test"}
  ] = 1

I emailed John Fultz about this and he said the best option was something like:

DynamicModule[{cachedValue},
 DynamicWrapper[
  Dynamic[
   {
    RandomReal[],
    cachedValue
    }
   ], cachedValue = CurrentValue[EvaluationNotebook[], {TaggingRules, "test"}]]
 ]

which kinda works in this case but which is definitely not scalable and I'm not even convinced is robust in the more complicated workflows I want to build.

Long term I want to be able to use the FE as an IDE with efficient tab management, toolbars, file browsing, extension-specific stylesheets, etc.

I have all the infrastructure for this and I use it day-to-day, but the FE is too slow to really encourage other people to use it--and much of the reason for this is in the poor performance of Dynamic (there are other issues like the fact that NotebookWrite is ridiculously slow, but that's probably harder to fix).

POSTED BY: b3m2a1 ​ 
POSTED BY: Arnoud Buzing

@Arnoud Buzing Here is a nice one:

Graphics3D /@ NestList[BeveledPolyhedron[#, 0.1] &, Dodecahedron[], 3]
POSTED BY: Sander Huisman
Reply to this discussion
Community posts can be styled and formatted using the Markdown syntax.
Reply Preview
Attachments
Remove
or Discard

Group Abstract Group Abstract