Bug 245485

Summary: Review Request: fityk-0.8.1 - curve-fitting program for X-Y data
Product: [Fedora] Fedora Reporter: John Pye <john>
Component: Package ReviewAssignee: Mamoru TASAKA <mtasaka>
Status: CLOSED NEXTRELEASE QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: medium Docs Contact:
Priority: low    
Version: rawhideCC: fedora-package-review, mtasaka, notting, tcallawa, wojdyr
Target Milestone: ---Flags: mtasaka: fedora-review+
wtogami: fedora-cvs+
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2007-07-20 00:39:35 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Attachments:
Description Flags
mock build log of fityk 0.8.1-16.1
none
gdb log of fityk none

Description John Pye 2007-06-23 23:40:49 UTC
Spec URL: http://ascend.cheme.cmu.edu/ftp/fityk.spec
SRPM URL: http://software.opensuse.org/download/home:/jdpipe/Fedora_7/src/fityk-0.8.1-5.1.src.rpm
Description: 
Fityk is a program for nonlinear curve-fitting of analytical
functions (especially peak-shaped) to data (usually experimental
data). It can also be used for visualization of x-y data only.

---
This package has been tested on FC5 and FC6 and seems to work fine. Tom 'Spot'
Calloway has helped with some initial comments and review. The package has also
been built in new clean environment using the openSUSE Build Service.

Comment 1 Mamoru TASAKA 2007-06-24 00:13:13 UTC
It seems you are not sponsored yet?

Comment 2 John Pye 2007-06-24 01:03:32 UTC
Perhaps. What do I need to do? I thought that Spot was going to sponsor this.

Comment 3 Mamoru TASAKA 2007-06-24 05:55:25 UTC
Spot, did you change the spec file? Then please
upload a new srpm.

Notes:
* Variables
  - Please check what %configure does and do not set unneeded
    variables.
    E.g. CXXFLAGS="$RPM_OPT_FLAGS": not needed
       CC="%{?ccache} gcc" CXX="%{?ccache} g++" also not needed
* Debuginfo
  - LDFLAGS="-s" is strictly forbidden

* Timestamps
  - Please add 'INSTALL="%{__install}" -p" option to
    'make install' to keep timestamps
  - And use "install -p" when using install command

* Seemingly unneeded scripts
  - When I do "make install", the following scripts are
    automatically done and seem unneeded
-------------------------------------------------------
#icons
install -m644 -D %{name}.png %{buildroot}/%{_datadir}/icons/%{name}.png
#tips file
install -m644 -D src/wxgui/tips.txt %{buildroot}/%{_datadir}/%{name}/fityk_tips.txt
--------------------------------------------------------

* scriptlets
  - Please explain why the call of update-mime-database is needed
    (Check the section "mimeinfo" of
     http://fedoraproject.org/wiki/Packaging/ScriptletSnippets )

* Requires
---------------------------------------------------------
Requires:	desktop-file-utils shared-mime-info
---------------------------------------------------------
  These two should be removed (these two seem to be added
  by spot)

  

Comment 4 John Pye 2007-06-24 08:14:59 UTC
Hi Tasaka,

Updated SRPM available at:
http://software.opensuse.org/download/home:/jdpipe/Fedora_7/src/fityk-0.8.1-16.1.src.rpm

I made the corrections you suggested to variables, scriptlets (mime database
update is not require at present, due to file association with *.fit being
removed), timestamps and debug info. 

The suggestions about the icon and tips file seems incorrect. I found that I
need at least the icon file, and as I recall, the tips file was also required,
due to having been omitted from the install phase in the current upstream release.

The current spec file is embedded in the src rpm.

Cheers
JP


Comment 5 Mamoru TASAKA 2007-06-24 11:07:01 UTC
Created attachment 157707 [details]
mock build log of fityk 0.8.1-16.1

Umm...
(In reply to comment #4)
> The suggestions about the icon and tips file seems incorrect. 
  - What is strange is that the build log actually says:
----------------------------------------------------------
 /usr/bin/install -p -m 644 'tips.txt'
'/var/tmp/fityk-0.8.1-16.1-buildroot/usr/share/fityk/tips.txt'
make[4]: Leaving directory `/builddir/build/BUILD/fityk-0.8.1/src/wxgui'
......
 /usr/bin/install -p -m 644 'fityk.png'
'/var/tmp/fityk-0.8.1-16.1-buildroot/usr/share/pixmaps/fityk.png'
make[2]: Leaving directory `/builddir/build/BUILD/fityk-0.8.1'
......
-----------------------------------------------------------
    So:
    - Actually fityk.png is installed. And
-----------------------------------------------------------
install -m644 -D %{name}.png %{buildroot}/%{_datadir}/icons/%{name}.png
-----------------------------------------------------------
      seems wrong because no package (on my system) installs
      icon png data under %{_datadir}/icons 
      (not %{_datadir}/icons/hicolor/??x??/apps) and %{_datadir}/pixmaps
      should be okay for the directory where pixmaps data is installed.
    - And
      tips.txt is also installed. However, the source expects:
      (in src/wxgui/gui.cpp)
-----------------------------------------------------
  1012	void FFrame::OnTipOfTheDay(wxCommandEvent&)
  1013	{
  1014	    string tip_file = "fityk_tips.txt";
  1015	    string tip_path = get_full_path_of_help_file(tip_file); 
-----------------------------------------------------
      the tips file named "fityk_tips.txt". So:
      - Perhaps the installed file "/usr/share/fityk/tips.txt" is
	not needed and should be removed (actually
	/usr/share/fityk/fityk_tips.txt and /usr/share/fityk/tips.txt
	are the same
       - or you should apply a patch against src/wxgui/gui.cpp.

* Documentation
  - "INSTALL" file is usually needed for people who want to
    rebuild this package by themselves and is not needed for people
    who want to install the package using rpm.
       - and please use "install -p" to keep timestamps
------------------------------------------------------------
install -m644 -D src/wxgui/tips.txt
%{buildroot}/%{_datadir}/%{name}/fityk_tips.txt
------------------------------------------------------------
	  when you want to use "install" command.

* Release number
  - please use integer for release number (some exceptions exist)
  - and you may want to use %{?dist} tag. While this is not
    required, it is preferable to avoid confusion.
    http://fedoraproject.org/wiki/Packaging/DistTag

Comment 6 John Pye 2007-06-24 14:44:56 UTC
Hi again

Here is an updated package:
http://software.opensuse.org/download/home:/jdpipe/Fedora_7/i386/fityk-0.8.1-18.2.i386.rpm

I removed the 'INSTALL' file, the duplicate tips file and the duplicate icon.

Note that the release numbers are automatically generated by the openSUSE Build
Service. I am happy for the %{?dist} thing to be added when the package is
finally accepted, however I can't easily add it during this test phase.

Cheers
JP

Comment 8 Mamoru TASAKA 2007-06-24 17:04:24 UTC
Created attachment 157717 [details]
gdb log of fityk

* Release number
> Note that the release numbers are automatically generated by 
> the openSUSE Build
> Service. 
  - Well, we are on Fedora, not on openSUSE... Please fix
    release number manually.
    And actually the %changelog entry says the version number
    is -8, not -18.1 (they must coincide, except for %?dist tag).

* For icon dir,
  - No.. What I said is that the icon should be under /usr/share/pixmaps,
    not under /usr/share/icons.

* Desktop category
  - Currently on GNOME desktop fityk entry appear in
    "その他” (this is Japanese, meaning "etc" in English) entry.
    IMO desktop categories for fedora-fityk.desktop should be:
----------------------------------------------------
Categories=Science;Education;GTK;
----------------------------------------------------

* gdb log
  - For me, fityk always causes double free corruption when:
    * launch filtk
    * choose Help-> About
    The gdb log is attached. Currently I don't know whether this
    is a bug of fityk side or wxGTK side or something else (GLib+?)

Comment 9 Mamoru TASAKA 2007-06-24 17:21:08 UTC
FYI my environ is:
gtk2-2.11.4-1.fc8
glib2-2.13.5-1.fc8
wxGTK-2.8.3-2.fc7
fityk-0.8.1-18.2

Comment 10 Marcin Wojdyr 2007-06-25 05:33:43 UTC
Hi, I'm upstream fityk maintainer

(In reply to comment #8)
> * gdb log
>   - For me, fityk always causes double free corruption when:
>     * launch filtk
>     * choose Help-> About
>     The gdb log is attached. Currently I don't know whether this
>     is a bug of fityk side or wxGTK side or something else (GLib+?)

I can't reproduce it, because I don't have gtk 2.11, but it's a bug in wx, that
was fixed in CVS a week ago:

revision 1.97
date: 2007/06/18 06:03:50;  author: MR;  state: Exp;  lines: +2 -2
gtk_border_free is for freeing GtkBorder's, not g_free.
Using g_free instead used to have no ill effects as gtk_border_free called that 
anyway, but in gtk+-2.11 GtkBorder
uses GSlice and gtk_border_free therefore uses g_slice_free and using g_free mak
es things crash hard.
So fix it or wxGTK won't work with the upcoming gtk+-2.12 stable release planned
 for end of July.

As a workaround, you may remove the line
bu_ok->SetDefault();
in fityk-0.8.1/src/wxgui/dialogs.cpp

I don't know if this problem will happen also in other places.

Marcin


Comment 11 Mamoru TASAKA 2007-06-25 07:08:43 UTC
Marcin, Thank you for useful information.
Then I think for now that free() corruption is not a bug of fityk.

Then, would you check my comment 8, John?

Comment 12 John Pye 2007-06-25 10:35:14 UTC
I think I addressed all of the remaining issues. Please try:
http://ascend.cheme.cmu.edu/ftp/fityk-0.8.1-8.fc6.src.rpm
http://ascend.cheme.cmu.edu/ftp/fityk.spec

Comment 13 Mamoru TASAKA 2007-06-25 17:12:20 UTC
Almost okay.

* Any reason you want to add %{?__cc:CC="%__cc"} %{?__cxx:CXX="%__cxx"} ?
* For desktop file:
--------------------------------------------------------
set -i 's/Categories=Application;Science/Categories=Science;Education/g'
fityk.desktop
--------------------------------------------------------
  It should be "sed".

BTW, will spot want to sponsor you?

Comment 14 John Pye 2007-06-26 00:19:17 UTC
Regarding the '__cc' thing, this was so that I can efficiently rebuild on my
slow and limited-memory FC6 machine at home. This way the rebuild is much
faster, as I set __cc to 'ccache gcc' (and likewise for c++) in my .rpmmacros.

The 'set' thing was wrong, as you discovered. Thanks for that. I corrected the
file on the server, but am not able to update the .src.rpm from here.
http://ascend.cheme.cmu.edu/ftp/fityk.spec

Comment 15 Mamoru TASAKA 2007-06-26 03:11:45 UTC
Well, then again is spot going to sponsor you?

Comment 16 John Pye 2007-06-26 04:11:36 UTC
Hi Tasaka,

Yes, Spot will sponsor me. I just heard from him. He has just returned from
holidays.

Cheers
JP

Comment 17 Mamoru TASAKA 2007-06-26 04:15:50 UTC
Okay.

----------------------------------------------
  This package (fityk) is APPROVED by me
----------------------------------------------

Please follow the procedure written on
http://fedoraproject.org/wiki/PackageMaintainers/Join
from "Get a Fedora Account"

If you want to push this package also on F-7, you
also have to check:
http://fedoraproject.org/wiki/Infrastructure/UpdatesSystem/Bodhi-info-DRAFT
after the URL above.

!! Well, recenctly Fedora package system changed a lot !!
   If you have some questions, please let us know.

Comment 18 Mamoru TASAKA 2007-07-03 16:01:52 UTC
ping?

Comment 19 John Pye 2007-07-04 02:45:17 UTC
I'm not sure what I'm supposed to do next. I have got a Fedora Account now, but
the instructions say that I need to create a Review Request, which AFAICT this
already is. What's next? My fedora account is 'jpye'.

Comment 20 John Pye 2007-07-04 02:48:22 UTC
Woops. Missed your preceding comments. I will work through those instructions.

Cheers
JP

Comment 21 Mamoru TASAKA 2007-07-09 17:38:06 UTC
If you have some questions, please let us know.

Comment 22 John Pye 2007-07-15 05:54:51 UTC
New Package CVS Request
=======================
Package Name: fityk
Short Description: Curve-fitting program
Owners: john, wojdyr
Branches: FC-6 F-7
InitialCC: john, wojdyr

Please can someone set the fedora-cvs flag to '?'. I can't do it, even though I
am a member of the fedora group 'fedorabugs'.

Comment 23 Mamoru TASAKA 2007-07-15 08:09:56 UTC
Once setting cvs to -.
wojdyr doesn't seem to be cvsextras member.

Comment 24 John Pye 2007-07-15 08:17:51 UTC
Hi Tasaka

That's fine. If he's not in cvsextras then leave him out. He can still be on the
CC list though, right?

Cheers
JP

Comment 25 Mamoru TASAKA 2007-07-15 08:46:40 UTC
(In reply to comment #24)

>  He can still be on the
> CC list though, right?

Okay. Please rewrite cvs request (and set cvs flag if possible)

Comment 26 John Pye 2007-07-15 08:48:17 UTC
New Package CVS Request
=======================
Package Name: fityk
Short Description: Curve-fitting program
Owners: john
Branches: FC-6 F-7
InitialCC: john, wojdyr

Comment 27 John Pye 2007-07-19 14:03:20 UTC
I have added fityk to the fedora CVS and have successfully build in the 'devel'
branch and it looks like it will build OK in F-7. I had an error message with
plague-client (below), but it looks like it is building now as well.

What do I need to do now? Do I close this bug?

-----
[john@jdpipe FC-6]$ plague-client list
Error: connection to the server timed out. '(110, 'Operation timed out.')'
[john@jdpipe FC-6]$ make build
/usr/bin/plague-client build fityk fityk-0_8_1-9_fc6 fc6
Package fityk enqueued.  Job ID: 35037.
[john@jdpipe FC-6]$ 


Comment 28 Tom "spot" Callaway 2007-07-19 14:16:00 UTC
Yes. Follow the last step in the Contributor process documented here:

http://fedoraproject.org/wiki/PackageReviewProcess



Comment 29 John Pye 2007-07-20 00:39:35 UTC
Closed as NEXTRELEASE.