From b05c4a19f07d0ca990367be050e2971479dabb76 Mon Sep 17 00:00:00 2001
From: WernerFink <>
Date: Jun 11 2025 17:02:05 +0000
Subject: Update gnuplot to version 6.0.3 / rev 100 via SR 1284714


https://build.opensuse.org/request/show/1284714
by user WernerFink + anag_factory
- Add patch gnuplot-6.0.3-backward_compat.patch

- Update to gnuplot 6.0.3
  * NEW backport "contourfill {at base} {fs {no}border}"
  * NEW backport "save changes <filename>"
        This variant saves only the differences between the current
        state and the state at the start of the session.
  * NEW backport "plot <data> ... if (filter_condition)"
        Input lines that satisfy the if condition are processed as usual.
        Lines that fail are essentially ignored.
  * NEW backport watchpoint label improvements from 6.1
        Each watch target can have its own label, generated by a user function
  * CHANGE 3D polygon objects can have per-object fill border properties.
        The restriction that all 3D polygons share a single set of
        properties from "set pm3d" remains t

---

diff --git a/packages/g/gnuplot/.files b/packages/g/gnuplot/.files
index 85ffff3..f3cdac5 100644
Binary files a/packages/g/gnuplot/.files and b/packages/g/gnuplot/.files differ
diff --git a/packages/g/gnuplot/.rev b/packages/g/gnuplot/.rev
index 5e5c059..8356fe9 100644
--- a/packages/g/gnuplot/.rev
+++ b/packages/g/gnuplot/.rev
@@ -1377,4 +1377,41 @@ removed boo#1203092 (forwarded request 1006499 from AndreasStieger)</comment>
     <comment></comment>
     <requestid>1281784</requestid>
   </revision>
+  <revision rev="100" vrev="1">
+    <srcmd5>62b4eeb6e736c89523409a156f6f4823</srcmd5>
+    <version>6.0.3</version>
+    <time>1749659669</time>
+    <user>anag_factory</user>
+    <comment>- Add patch gnuplot-6.0.3-backward_compat.patch 
+
+- Update to gnuplot 6.0.3
+  * NEW backport &quot;contourfill {at base} {fs {no}border}&quot;
+  * NEW backport &quot;save changes &lt;filename&gt;&quot;
+        This variant saves only the differences between the current
+        state and the state at the start of the session.
+  * NEW backport &quot;plot &lt;data&gt; ... if (filter_condition)&quot;
+        Input lines that satisfy the if condition are processed as usual.
+        Lines that fail are essentially ignored.
+  * NEW backport watchpoint label improvements from 6.1
+        Each watch target can have its own label, generated by a user function
+  * CHANGE 3D polygon objects can have per-object fill border properties.
+        The restriction that all 3D polygons share a single set of
+        properties from &quot;set pm3d&quot; remains true for &quot;splot with polygons&quot;.
+  * CHANGE multiplot mousing and replot improvements back-ported from version 6.1
+  * CHANGE wxt: remove --with-wx-multithreaded configuration option
+  * CHANGE restrictions on watchpoint function target removed; any function is OK
+  * CHANGE &quot;with hsteps&quot; takes default width from &quot;set boxwidth&quot;
+  * CHANGE column(0) returns an integer (not complex) value
+  * FIX Support for combined hidden3d + pm3d depthorder back-ported from 6.1
+        This allows placing contours on a depth-sorted pm3d surface    Bug 2762
+  * FIX &quot;with yerrorbars&quot; error bar span should not affect OUTRANGE    Bug 2749
+  * FIX qt: opaque key caused incorrect interactive toggling           Bug 2761
+  * FIX 6.0.2 regression in &quot;splot ... using 1:2:3:4 lc palette&quot;       Bug 2784
+  * FIX placement of category labels along x-axis of boxplots          Bug 2789
+  * FIX qt, cairo: &quot;set colorbox invert&quot; produced empty colorbox
+  * FIX placement of minor tics along logscale axis with narrow range  Bug 2765
+  * FIX OK to have missing corners in an image from a sparse matrix    Bug 2791
+  * FIX error handling for various cases involving function blocks     Bug 2797</comment>
+    <requestid>1284714</requestid>
+  </revision>
 </revisionlist>
diff --git a/packages/g/gnuplot/Gnuplot6.pdf b/packages/g/gnuplot/Gnuplot6.pdf
index cb4eb2c..709a9f5 120000
--- a/packages/g/gnuplot/Gnuplot6.pdf
+++ b/packages/g/gnuplot/Gnuplot6.pdf
@@ -1 +1 @@
-/ipfs/bafybeidpt7oshyo4oqhznfiuqm6q2v7qjqesaiu7lp647hn43uetqo23ze
\ No newline at end of file
+/ipfs/bafybeia4yxhemerqzlkhhdqqnfuswzxmwavym3cwcyek7purbgnbqygtcm
\ No newline at end of file
diff --git a/packages/g/gnuplot/fix4bug1240325.patch b/packages/g/gnuplot/fix4bug1240325.patch
deleted file mode 100644
index 1b8d409..0000000
--- a/packages/g/gnuplot/fix4bug1240325.patch
+++ /dev/null
@@ -1,75 +0,0 @@
-commit b456a3ef618f55a20b3071d336cb20514274f1d4
-Author: Ethan A Merritt <merritt@u.washington.edu>
-Date:   Tue Mar 11 12:31:54 2025 -0700
-
-    guard against invalid read from plot->labels
-    
-    If a plot style uses points and the point chosen has PT_CHARACTER
-    then the program looks for a possible font in plot->labels->font.
-    These plot styles contain a flag bit HAS_POINT (gp_types.h).
-    The program makes sure to initialize plot->labels for these styles.
-    However a problem arises when a plot style that doesn't use points
-    nevertheless triggers this same attempted font lookup by using a
-    linetype that happens to use pointtype PT_CHARACTER.
-    I think this is only possible with 'splot' but I added parallel
-    checks for 'plot' as well.
-    
-    Bug 2776
-
-diff --git src/boundary.c src/boundary.c
-index e787de3f1..941635f7a 100644
---- src/boundary.c
-+++ src/boundary.c
-@@ -1468,7 +1468,7 @@ do_key_sample_point(
- 	    (*t->pointsize)(pointsize);
- 	if (on_page(xl + key_point_offset, yl)) {
- 	    if (this_plot->lp_properties.p_type == PT_CHARACTER) {
--		if (this_plot->labels->textcolor.type != TC_DEFAULT)
-+		if (this_plot->labels && this_plot->labels->textcolor.type != TC_DEFAULT)
- 		    apply_pm3dcolor(&(this_plot->labels->textcolor));
- 		(*t->put_text) (xl + key_point_offset, yl, 
- 				this_plot->lp_properties.p_char);
-diff --git src/graph3d.c src/graph3d.c
-index bda614b7a..74ae8d558 100644
---- src/graph3d.c
-+++ src/graph3d.c
-@@ -2164,7 +2164,7 @@ plot3d_points(struct surface_points *plot)
-     /* Set whatever we can that applies to every point in the loop */
-     if (plot->lp_properties.p_type == PT_CHARACTER) {
- 	ignore_enhanced(TRUE);
--	if (plot->labels->font && plot->labels->font[0])
-+	if (plot->labels && plot->labels->font && plot->labels->font[0])
- 	    (*t->set_font) (plot->labels->font);
- 	(*t->justify_text) (CENTRE);
-     }
-@@ -2260,7 +2260,7 @@ plot3d_points(struct surface_points *plot)
- 
-     /* Return to initial state */
-     if (plot->lp_properties.p_type == PT_CHARACTER) {
--	if (plot->labels->font && plot->labels->font[0])
-+	if (plot->labels && plot->labels->font && plot->labels->font[0])
- 	    (*t->set_font) ("");
- 	ignore_enhanced(FALSE);
-     }
-diff --git src/graphics.c src/graphics.c
-index 083cb61f4..f68ef7096 100644
---- src/graphics.c
-+++ src/graphics.c
-@@ -2649,7 +2649,7 @@ plot_points(struct curve_points *plot)
-     /* Set whatever we can that applies to every point in the loop */
-     if (plot->lp_properties.p_type == PT_CHARACTER) {
- 	ignore_enhanced(TRUE);
--	if (plot->labels->font && plot->labels->font[0])
-+	if (plot->labels && plot->labels->font && plot->labels->font[0])
- 	    (*t->set_font) (plot->labels->font);
- 	(*t->justify_text) (CENTRE);
-     }
-@@ -2781,7 +2781,7 @@ plot_points(struct curve_points *plot)
- 
-     /* Return to initial state */
-     if (plot->lp_properties.p_type == PT_CHARACTER) {
--	if (plot->labels->font && plot->labels->font[0])
-+	if (plot->labels && plot->labels->font && plot->labels->font[0])
- 	    (*t->set_font) ("");
- 	ignore_enhanced(FALSE);
-     }
diff --git a/packages/g/gnuplot/fix4bug1240326.patch b/packages/g/gnuplot/fix4bug1240326.patch
deleted file mode 100644
index afcf987..0000000
--- a/packages/g/gnuplot/fix4bug1240326.patch
+++ /dev/null
@@ -1,30 +0,0 @@
-commit 226809aebb345e74d371bb43a2b434b490be527a
-Author: Ethan A Merritt <merritt@u.washington.edu>
-Date:   Wed Jan 15 11:56:13 2025 -0800
-
-    dumb:  more stringent tests against y bound of dumb terminal charcell array
-    
-    Bug 2756
-
-diff --git term/dumb.trm term/dumb.trm
-index 498e27fc6..fdc94fbf5 100644
---- term/dumb.trm
-+++ term/dumb.trm
-@@ -801,7 +801,7 @@ DUMB_put_text(unsigned int x, unsigned int y, const char *str)
- {
-     int i, length;
- 
--    if (y > dumb_ymax)
-+    if (y < 0 || y > dumb_ymax)
- 	return;
- 
-     length = gp_strlen(str);
-@@ -949,7 +949,7 @@ ENHdumb_FLUSH()
- 	y += i;
- 
- 	/* print the string fragment, perhaps invisibly */
--	if (ENHdumb_show && y < dumb_ymax) {
-+	if (ENHdumb_show && (0 <= y && y < dumb_ymax)) {
- 	    for (i = 0; i < len && x < dumb_xmax; i++, x++) {
- 		utf8_copy_one( (char *)(&DUMB_PIXEL(x, y)), gp_strchrn(str,i));
- #ifndef NO_DUMB_COLOR_SUPPORT
diff --git a/packages/g/gnuplot/fix4bug1240327.patch b/packages/g/gnuplot/fix4bug1240327.patch
deleted file mode 100644
index 3562a06..0000000
--- a/packages/g/gnuplot/fix4bug1240327.patch
+++ /dev/null
@@ -1,84 +0,0 @@
-commit b78cc829a18e9436daaa859c96f3970157f3171e
-Author: Ethan A Merritt <merritt@u.washington.edu>
-Date:   Tue Jan 14 21:23:19 2025 -0800
-
-    use snprintf to protect against garbage user-supplied mouse format
-    
-    Bug 2754
-
-diff --git src/mouse.c src/mouse.c
-index 4d1362130..95266738b 100644
---- src/mouse.c
-+++ src/mouse.c
-@@ -270,7 +270,7 @@ static void alert(void);
- static void MousePosToGraphPosReal(int xx, int yy, double *x, double *y, double *x2, double *y2);
- static char *xy_format(void);
- static char *zoombox_format(void);
--static char *GetAnnotateString(char *s, double x, double y, int mode, char *fmt);
-+static char *GetAnnotateString(char *s, size_t len, double x, double y, int mode, char *fmt);
- static char *xDateTimeFormat(double x, char *b, int mode);
- static void GetRulerString(char *p, double x, double y);
- static void apply_zoom(struct t_zoom * z);
-@@ -524,7 +524,7 @@ zoombox_format()
- /* formats the information for an annotation (middle mouse button clicked)
-  */
- static char *
--GetAnnotateString(char *s, double x, double y, int mode, char *fmt)
-+GetAnnotateString(char *s, size_t len, double x, double y, int mode, char *fmt)
- {
-     if (axis_array[FIRST_X_AXIS].datatype == DT_DMS
-     ||  axis_array[FIRST_Y_AXIS].datatype == DT_DMS) {
-@@ -579,11 +579,11 @@ GetAnnotateString(char *s, double x, double y, int mode, char *fmt)
- 	    r = rmin + x/cos(phi);
- 
- 	if (fmt)
--	    sprintf(s, fmt, theta, r);
-+	    snprintf(s, len, fmt, theta, r);
- 	else
- 	    sprintf(s, "theta: %.1f%s  r: %g", theta, degree_sign, r);
-     } else if ((mode == MOUSE_COORDINATES_ALT) && fmt) {
--	sprintf(s, fmt, x, y);	/* user defined format */
-+	snprintf(s, len, fmt, x, y);	/* user defined format */
-     } else if (mode == MOUSE_COORDINATES_FUNCTION) {
- 	/* EXPERIMENTAL !!! */
- 	t_value original_x, original_y;
-@@ -606,7 +606,7 @@ GetAnnotateString(char *s, double x, double y, int mode, char *fmt)
- 	gpfree_string(&readout);
-     } else {
- 	/* Default format ("set mouse mouseformat" is not active) */
--	sprintf(s, xy_format(), x, y);	/* usual x,y values */
-+	snprintf(s, len, xy_format(), x, y);	/* usual x,y values */
-     }
-     return s + strlen(s);
- }
-@@ -1020,10 +1020,10 @@ UpdateStatuslineWithMouseSetting(mouse_setting_t * ms)
- 	strcat(format, ms->fmt);
- 	strcat(format, ", ");
- 	strcat(format, ms->fmt);
--	sprintf(s0, format, surface_rot_x, surface_rot_z, surface_scale, surface_zscale);
-+	snprintf(s0, 255, format, surface_rot_x, surface_rot_z, surface_scale, surface_zscale);
-     } else if (!TICS_ON(axis_array[SECOND_X_AXIS].ticmode) && !TICS_ON(axis_array[SECOND_Y_AXIS].ticmode)) {
- 	/* only first X and Y axis are in use */
--	sp = GetAnnotateString(s0, real_x, real_y, mouse_mode, mouse_alt_string);
-+	sp = GetAnnotateString(s0, 255, real_x, real_y, mouse_mode, mouse_alt_string);
- 	if (ruler.on)
- 	    GetRulerString(sp, real_x, real_y);
-     } else {
-@@ -2286,7 +2286,7 @@ event_buttonrelease(struct gp_event_t *ge)
- 	     * only place, if the user didn't drag (rotate) the plot */
- 
- 	    if (!is_3d_plot || !motion) {
--		GetAnnotateString(s0, real_x, real_y, mouse_mode, mouse_alt_string);
-+		GetAnnotateString(s0, 255, real_x, real_y, mouse_mode, mouse_alt_string);
- 		term->set_clipboard(s0);
- 		if (display_ipc_commands()) {
- 		    fprintf(stderr, "put `%s' to clipboard.\n", s0);
-@@ -2302,7 +2302,7 @@ event_buttonrelease(struct gp_event_t *ge)
- 	    /* draw temporary annotation or label. For 3d plots this is
- 	     * only done if the user didn't drag (scale) the plot */
- 	    if (!is_3d_plot || !motion) {
--		GetAnnotateString(s0, real_x, real_y, mouse_mode, mouse_alt_string);
-+		GetAnnotateString(s0, 255, real_x, real_y, mouse_mode, mouse_alt_string);
- 		if (mouse_setting.label) {
- 		    if (modifier_mask & Mod_Ctrl) {
- 			remove_label(mouse_x, mouse_y);
diff --git a/packages/g/gnuplot/fix4bug1240328.patch b/packages/g/gnuplot/fix4bug1240328.patch
deleted file mode 100644
index 9206079..0000000
--- a/packages/g/gnuplot/fix4bug1240328.patch
+++ /dev/null
@@ -1,107 +0,0 @@
-commit ed647df512786b3c94429dd5c864715301e03ea5
-Author: Ethan A Merritt <merritt@u.washington.edu>
-Date:   Tue Mar 11 16:31:23 2025 -0700
-
-    guard against trying to format a huge number as a time
-    
-    The time formatting code does not handle time_in_seconds > 1.e12
-    (sometime in the year 33658).
-    
-    Bug 2779
-
-diff --git src/mouse.c src/mouse.c
-index ba0609290..a6110f5ff 100644
---- src/mouse.c
-+++ src/mouse.c
-@@ -619,6 +619,11 @@ static char *
- xDateTimeFormat(double x, char *b, int mode)
- {
-     struct tm tm;
-+    if (fabs(x) > 1.e12) {  /* Some time in the year 33688 */
-+	int_warn(NO_CARET, "time value out of range");
-+	*b = '\0';
-+	return b;
-+    }
- 
-     switch (mode) {
-     case MOUSE_COORDINATES_XDATE:
-commit 3270021820ff6ac7a6d77b77fe69777129937994
-Author: Ethan A Merritt <merritt@u.washington.edu>
-Date:   Wed Mar 12 19:56:13 2025 -0700
-
-    check valid range on time value before trying to format it
-    
-    Absurdly large time values (number of seconds) cause failures in the
-    routines that populate a time structure and format the result.
-    The program does complain about an invalid time value but only
-    after the failures have already occurred.
-    E.g.
-            print strftime("%Y", 1.e14)
-    
-    Now a check for fabs(time) > 1.e12 is the first thing in f_strftime().
-    
-    Bug 2779
-
-diff --git src/internal.c src/internal.c
-index 53be8d409..2d8812e49 100644
---- src/internal.c
-+++ src/internal.c
-@@ -1905,30 +1905,37 @@ f_strftime(union argument *arg)
- 	int_error(NO_CARET,
- 		  "First parameter to strftime must be a format string");
- 
--    /* Prepare format string.
--     * Make sure the resulting string not empty by adding a space.
--     * Otherwise, the return value of gstrftime doesn't give enough
--     * information.
--     */
--    fmtlen = strlen(fmt.v.string_val) + 1;
--    fmtstr = gp_alloc(fmtlen + 1, "f_strftime: fmt");
--    strncpy(fmtstr, fmt.v.string_val, fmtlen);
--    strncat(fmtstr, " ", fmtlen);
--    buflen = 80 + 2*fmtlen;
--    buffer = gp_alloc(buflen, "f_strftime: buffer");
--
--    /* Get time_str */
--    length = gstrftime(buffer, buflen, fmtstr, real(&val));
--    if (length == 0 || length >= buflen)
--	int_error(NO_CARET, "String produced by time format is too long");
--
--    /* Remove trailing space */
--    assert(buffer[length-1] == ' ');
--    buffer[length-1] = NUL;
-+    /* Range check */
-+    if (!(fabs(real(&val)) < 1.e12)) {
-+	int_warn(NO_CARET, "time value out of range");
-+	buffer = strdup("    ");
-+
-+    } else {
-+	/* Prepare format string.
-+	 * Make sure the resulting string not empty by adding a space.
-+	 * Otherwise, the return value of gstrftime doesn't give enough
-+	 * information.
-+	 */
-+	fmtlen = strlen(fmt.v.string_val) + 1;
-+	fmtstr = gp_alloc(fmtlen + 1, "f_strftime: fmt");
-+	strncpy(fmtstr, fmt.v.string_val, fmtlen);
-+	strncat(fmtstr, " ", fmtlen);
-+	buflen = 80 + 2*fmtlen;
-+	buffer = gp_alloc(buflen, "f_strftime: buffer");
-+
-+	/* Get time_str */
-+	length = gstrftime(buffer, buflen, fmtstr, real(&val));
-+	if (length == 0 || length >= buflen)
-+	    int_error(NO_CARET, "String produced by time format is too long");
-+
-+	/* Remove trailing space */
-+	assert(buffer[length-1] == ' ');
-+	buffer[length-1] = NUL;
-+	free(fmtstr);
-+    }
- 
-     gpfree_string(&val);
-     gpfree_string(&fmt);
--    free(fmtstr);
- 
-     push(Gstring(&val, buffer));
-     free(buffer);
diff --git a/packages/g/gnuplot/fix4bug1240329.patch b/packages/g/gnuplot/fix4bug1240329.patch
deleted file mode 100644
index 4b8171e..0000000
--- a/packages/g/gnuplot/fix4bug1240329.patch
+++ /dev/null
@@ -1,33 +0,0 @@
-commit b2343fd02c4fff94957f0151b73daa0a1f7fec49
-Author: Ethan A Merritt <merritt@u.washington.edu>
-Date:   Tue Jan 14 21:54:14 2025 -0800
-
-    canvas:  handle nonlinear x2 or y2 axis with an incomplete definition
-    
-    Actually "handle" means "ignore".
-    But now it doesn't segfault trying to probe a non-existant link function.
-    
-    Bug 2755
-
-diff --git term/canvas.trm term/canvas.trm
-index a919b09bd..bfe567832 100644
---- term/canvas.trm
-+++ term/canvas.trm
-@@ -646,7 +646,7 @@ CANVAS_text()
- 	} else
- 	    fprintf(gpoutfile, "gnuplot.plot_axis_x2min = \"none\"\n");
- 	if (axis_array[SECOND_X_AXIS].linked_to_primary
--	&&  axis_array[FIRST_X_AXIS].link_udf->at) {
-+	&&  axis_array[FIRST_X_AXIS].link_udf && axis_array[FIRST_X_AXIS].link_udf->at) {
- 	    fprintf(gpoutfile, "gnuplot.x2_mapping = function(x) { return x; };");
- 	    fprintf(gpoutfile, "  // replace returned value with %s\n",
- 			axis_array[FIRST_X_AXIS].link_udf->definition);
-@@ -657,7 +657,7 @@ CANVAS_text()
- 	} else
- 	    fprintf(gpoutfile, "gnuplot.plot_axis_y2min = \"none\"\n");
- 	if (axis_array[SECOND_Y_AXIS].linked_to_primary
--	&&  axis_array[FIRST_Y_AXIS].link_udf->at) {
-+	&&  axis_array[FIRST_Y_AXIS].link_udf && axis_array[FIRST_Y_AXIS].link_udf->at) {
- 	    fprintf(gpoutfile, "gnuplot.y2_mapping = function(y) { return y; };");
- 	    fprintf(gpoutfile, "  // replace returned value with %s\n",
- 			axis_array[FIRST_Y_AXIS].link_udf->definition);
diff --git a/packages/g/gnuplot/fix4bug1240330.patch b/packages/g/gnuplot/fix4bug1240330.patch
deleted file mode 100644
index bb92c16..0000000
--- a/packages/g/gnuplot/fix4bug1240330.patch
+++ /dev/null
@@ -1,34 +0,0 @@
-commit af96c2c1b20383684b1ec2084dab7936f7053031
-Author: Ethan A Merritt <merritt@u.washington.edu>
-Date:   Tue Jan 14 20:56:37 2025 -0800
-
-    x11: protect against double fclose() if two errors in a row
-    
-    Bug 2753
-
-diff --git term/x11.trm term/x11.trm
-index 18ad4ad85..cbe01dd0e 100644
---- term/x11.trm
-+++ term/x11.trm
-@@ -854,8 +854,9 @@ X11_atexit()
- 	/* dont wait(), since they might be -persist */
- 	X11_ipc = NULL;
- #ifdef PIPE_IPC
--	close(ipc_back_fd);
--	ipc_back_fd = -1;
-+	if (ipc_back_fd >= 0)
-+	    close(ipc_back_fd);
-+	ipc_back_fd = IPC_BACK_CLOSED;
- #endif
-     }
- }
-@@ -1374,7 +1375,8 @@ X11_graphics()
- #ifdef PIPE_IPC
-     /* if we know the outboard driver has stopped, restart it */
-     if (ipc_back_fd == IPC_BACK_CLOSED) {
--	fclose(X11_ipc);
-+	if (X11_ipc > 0)
-+	    fclose(X11_ipc);
- 	X11_ipc = NULL;
- 	X11_init();
-     }
diff --git a/packages/g/gnuplot/gnuplot-4.6.0-demo.diff b/packages/g/gnuplot/gnuplot-4.6.0-demo.diff
index 6bf0a95..855d177 100644
--- a/packages/g/gnuplot/gnuplot-4.6.0-demo.diff
+++ b/packages/g/gnuplot/gnuplot-4.6.0-demo.diff
@@ -115,7 +115,7 @@
      envptr = loadpath;
 --- src/show.c
 +++ src/show.c	2020-07-17 07:25:00.022670914 +0000
-@@ -1139,6 +1139,15 @@ show_version(FILE *fp)
+@@ -1138,6 +1138,15 @@ show_version(FILE *fp)
  	    p 			/* type "help seeking-assistance" */
  	    );
  
diff --git a/packages/g/gnuplot/gnuplot-4.6.0.dif b/packages/g/gnuplot/gnuplot-4.6.0.dif
index 3e08ea4..d4b7c2a 100644
--- a/packages/g/gnuplot/gnuplot-4.6.0.dif
+++ b/packages/g/gnuplot/gnuplot-4.6.0.dif
@@ -93,7 +93,7 @@
  
 --- gnuplot-6.0.0/src/plot.c
 +++ gnuplot-6.0.0/src/plot.c	2024-01-08 09:16:58.124450437 +0000
-@@ -298,6 +298,22 @@ main(int argc_orig, char **argv)
+@@ -299,6 +299,22 @@ main(int argc_orig, char **argv)
      rl_getc_function = getc_wrapper;
  #endif
  
diff --git a/packages/g/gnuplot/gnuplot-6.0.2.tar.gz b/packages/g/gnuplot/gnuplot-6.0.2.tar.gz
deleted file mode 120000
index 924b351..0000000
--- a/packages/g/gnuplot/gnuplot-6.0.2.tar.gz
+++ /dev/null
@@ -1 +0,0 @@
-/ipfs/bafybeieyxqckg5zz4ru4kfovvk3rfyxbactwihniwtl7l7ehjbghmtfnuu
\ No newline at end of file
diff --git a/packages/g/gnuplot/gnuplot-6.0.3-backward_compat.patch b/packages/g/gnuplot/gnuplot-6.0.3-backward_compat.patch
new file mode 100644
index 0000000..8de55ec
--- /dev/null
+++ b/packages/g/gnuplot/gnuplot-6.0.3-backward_compat.patch
@@ -0,0 +1,15 @@
+---
+ src/command.c |    2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+--- src/command.c
++++ src/command.c	2025-06-11 08:00:24.047462255 +0000
+@@ -2638,7 +2638,7 @@ reread_command()
+ #ifdef BACKWARD_COMPATIBILITY
+     FILE *fp;
+     c_token++;
+-    if (evaluate_inside_functionblock || multiplot || multiplot_playback)
++    if (evaluate_inside_functionblock || in_multiplot || multiplot_playback)
+ 	int_error(NO_CARET, "reread command not possible here");
+     fp = lf_top();
+     if (fp != (FILE *) NULL)
diff --git a/packages/g/gnuplot/gnuplot-6.0.3.tar.gz b/packages/g/gnuplot/gnuplot-6.0.3.tar.gz
new file mode 120000
index 0000000..f21fb9f
--- /dev/null
+++ b/packages/g/gnuplot/gnuplot-6.0.3.tar.gz
@@ -0,0 +1 @@
+/ipfs/bafybeie2cfdke2575yati3j5j3f4dcdrk3fn2jfdiypm3dhz237gfxpjp4
\ No newline at end of file
diff --git a/packages/g/gnuplot/gnuplot-doc.changes b/packages/g/gnuplot/gnuplot-doc.changes
index 1f8e54a..c44f11d 100644
--- a/packages/g/gnuplot/gnuplot-doc.changes
+++ b/packages/g/gnuplot/gnuplot-doc.changes
@@ -1,4 +1,57 @@
 -------------------------------------------------------------------
+Wed Jun 11 08:02:18 UTC 2025 - Dr. Werner Fink <werner@suse.de>
+
+- Add patch gnuplot-6.0.3-backward_compat.patch 
+
+-------------------------------------------------------------------
+Wed Jun 11 06:45:38 UTC 2025 - Dr. Werner Fink <werner@suse.de>
+
+- Update to gnuplot 6.0.3
+  * NEW backport "contourfill {at base} {fs {no}border}"
+  * NEW backport "save changes <filename>"
+        This variant saves only the differences between the current
+        state and the state at the start of the session.
+  * NEW backport "plot <data> ... if (filter_condition)"
+        Input lines that satisfy the if condition are processed as usual.
+        Lines that fail are essentially ignored.
+  * NEW backport watchpoint label improvements from 6.1
+        Each watch target can have its own label, generated by a user function
+  * CHANGE 3D polygon objects can have per-object fill border properties.
+        The restriction that all 3D polygons share a single set of
+        properties from "set pm3d" remains true for "splot with polygons".
+  * CHANGE multiplot mousing and replot improvements back-ported from version 6.1
+  * CHANGE wxt: remove --with-wx-multithreaded configuration option
+  * CHANGE restrictions on watchpoint function target removed; any function is OK
+  * CHANGE "with hsteps" takes default width from "set boxwidth"
+  * CHANGE column(0) returns an integer (not complex) value
+  * FIX Support for combined hidden3d + pm3d depthorder back-ported from 6.1
+        This allows placing contours on a depth-sorted pm3d surface    Bug 2762
+  * FIX "with yerrorbars" error bar span should not affect OUTRANGE    Bug 2749
+  * FIX qt: opaque key caused incorrect interactive toggling           Bug 2761
+  * FIX 6.0.2 regression in "splot ... using 1:2:3:4 lc palette"       Bug 2784
+  * FIX placement of category labels along x-axis of boxplots          Bug 2789
+  * FIX qt, cairo: "set colorbox invert" produced empty colorbox
+  * FIX placement of minor tics along logscale axis with narrow range  Bug 2765
+  * FIX OK to have missing corners in an image from a sparse matrix    Bug 2791
+  * FIX error handling for various cases involving function blocks     Bug 2797
+- Remove patches now upstream
+  * fix4bug1240325.patch
+  * fix4bug1240326.patch
+  * fix4bug1240327.patch
+  * fix4bug1240328.patch
+  * fix4bug1240329.patch
+  * fix4bug1240330.patch
+
+-------------------------------------------------------------------
+Wed May 28 08:56:43 UTC 2025 - Antonio Larrosa <alarrosa@suse.com>
+
+- Build with qt6 instead of qt5
+- Add _constraints file to make sure there's enough disk space
+  for building
+- Use gcc-13 when building for Leap since qt6 needs a C++17
+  compiler
+
+-------------------------------------------------------------------
 Mon May 12 12:14:33 UTC 2025 - Dr. Werner Fink <werner@suse.de>
 
 - Add patches
diff --git a/packages/g/gnuplot/gnuplot.changes b/packages/g/gnuplot/gnuplot.changes
index 7b88daa..c44f11d 100644
--- a/packages/g/gnuplot/gnuplot.changes
+++ b/packages/g/gnuplot/gnuplot.changes
@@ -1,4 +1,48 @@
 -------------------------------------------------------------------
+Wed Jun 11 08:02:18 UTC 2025 - Dr. Werner Fink <werner@suse.de>
+
+- Add patch gnuplot-6.0.3-backward_compat.patch 
+
+-------------------------------------------------------------------
+Wed Jun 11 06:45:38 UTC 2025 - Dr. Werner Fink <werner@suse.de>
+
+- Update to gnuplot 6.0.3
+  * NEW backport "contourfill {at base} {fs {no}border}"
+  * NEW backport "save changes <filename>"
+        This variant saves only the differences between the current
+        state and the state at the start of the session.
+  * NEW backport "plot <data> ... if (filter_condition)"
+        Input lines that satisfy the if condition are processed as usual.
+        Lines that fail are essentially ignored.
+  * NEW backport watchpoint label improvements from 6.1
+        Each watch target can have its own label, generated by a user function
+  * CHANGE 3D polygon objects can have per-object fill border properties.
+        The restriction that all 3D polygons share a single set of
+        properties from "set pm3d" remains true for "splot with polygons".
+  * CHANGE multiplot mousing and replot improvements back-ported from version 6.1
+  * CHANGE wxt: remove --with-wx-multithreaded configuration option
+  * CHANGE restrictions on watchpoint function target removed; any function is OK
+  * CHANGE "with hsteps" takes default width from "set boxwidth"
+  * CHANGE column(0) returns an integer (not complex) value
+  * FIX Support for combined hidden3d + pm3d depthorder back-ported from 6.1
+        This allows placing contours on a depth-sorted pm3d surface    Bug 2762
+  * FIX "with yerrorbars" error bar span should not affect OUTRANGE    Bug 2749
+  * FIX qt: opaque key caused incorrect interactive toggling           Bug 2761
+  * FIX 6.0.2 regression in "splot ... using 1:2:3:4 lc palette"       Bug 2784
+  * FIX placement of category labels along x-axis of boxplots          Bug 2789
+  * FIX qt, cairo: "set colorbox invert" produced empty colorbox
+  * FIX placement of minor tics along logscale axis with narrow range  Bug 2765
+  * FIX OK to have missing corners in an image from a sparse matrix    Bug 2791
+  * FIX error handling for various cases involving function blocks     Bug 2797
+- Remove patches now upstream
+  * fix4bug1240325.patch
+  * fix4bug1240326.patch
+  * fix4bug1240327.patch
+  * fix4bug1240328.patch
+  * fix4bug1240329.patch
+  * fix4bug1240330.patch
+
+-------------------------------------------------------------------
 Wed May 28 08:56:43 UTC 2025 - Antonio Larrosa <alarrosa@suse.com>
 
 - Build with qt6 instead of qt5
diff --git a/packages/g/gnuplot/gnuplot.spec b/packages/g/gnuplot/gnuplot.spec
index d21d6cb..752d13f 100644
--- a/packages/g/gnuplot/gnuplot.spec
+++ b/packages/g/gnuplot/gnuplot.spec
@@ -91,7 +91,7 @@ BuildRequires:  tex(textgreek.sty)
 BuildRequires:  tex(upquote.sty)
 %endif
 URL:            https://www.gnuplot.info/
-Version:        6.0.2
+Version:        6.0.3
 Release:        0
 %global         underscore 6
 %if "%{flavor}" == ""
@@ -121,12 +121,7 @@ Patch4:         gnuplot-4.6.0-demo.diff
 Patch5:         gnuplot-wx3.diff
 Patch6:         gnuplot-QtCore-PIC.dif
 Patch7:         gnuplot-PIE.patch
-Patch25:        fix4bug1240325.patch
-Patch26:        fix4bug1240326.patch
-Patch27:        fix4bug1240327.patch
-Patch28:        fix4bug1240328.patch
-Patch29:        fix4bug1240329.patch
-Patch30:        fix4bug1240330.patch
+Patch8:         gnuplot-6.0.3-backward_compat.patch
 Patch84:        fix4bug1241684.patch
 %define _x11lib     %{_libdir}
 %define _x11data    %{_datadir}/X11
@@ -163,12 +158,7 @@ cp %{_sourcedir}/picins.sty docs
 %patch -P5 -p1 -b .w3x
 %patch -P6 -p0 -b .pic
 %patch -P7 -p1 -b .pie
-%patch -P25 -p0 -b .p25
-%patch -P26 -p0 -b .p26
-%patch -P27 -p0 -b .p27
-%patch -P28 -p0 -b .p28
-%patch -P29 -p0 -b .p29
-%patch -P30 -p0 -b .p30
+%patch -P8 -p0 -b .multiplot
 %patch -P84 -p0 -b .p84
 
 %build