Bug 12778 - [Update Request] mono-flickrnet version to latest 3.X
Summary: [Update Request] mono-flickrnet version to latest 3.X
Status: RESOLVED OLD
Alias: None
Product: Mageia
Classification: Unclassified
Component: Backports (show other bugs)
Version: 4
Hardware: All Linux
Priority: Normal normal
Target Milestone: ---
Assignee: Barry Jackson
QA Contact:
URL:
Whiteboard:
Keywords: Backport
Depends on:
Blocks: 11253
  Show dependency treegraph
 
Reported: 2014-02-15 10:28 CET by Matthieu Nguyen
Modified: 2015-07-03 14:55 CEST (History)
1 user (show)

See Also:
Source RPM: mono-flickrnet
CVE:
Status comment:


Attachments

Description Matthieu Nguyen 2014-02-15 10:28:58 CET
Hello. I've been trying to work on making F-Spot compile again under Mageia and noticed that the FlickrNet API (mono-flickrnet) delivered in MGA4 is still 2.1.5, while the 3.x releases have been stable since 2012. Current stable is 3.7. Would there be a way to update (or provide 3.7 as a separate package)?
Matthieu Nguyen 2014-02-15 10:29:56 CET

Source RPM: (none) => mono-flickrnet

Comment 1 Manuel Hiebel 2014-02-16 18:16:14 CET
more a backport request, but this packages looks no more maintained
cf http://svnweb.mageia.org/packages/updates/4/mono-flickrnet/current/SPECS/mono-flickrnet.spec?view=log

Component: New RPM package request => Backports

Comment 2 Matthieu Nguyen 2014-02-16 23:04:18 CET
Not sure about the difference between backport and upgrade, sorry if I labeled it incorrectly. What do you mean by "no more maintained"? You mean there currently is no maintainer for the package in the MGA Team? Because the API itself is still active and getting updates (cf. http://flickrnet.codeplex.com/ )
Comment 3 Manuel Hiebel 2014-02-17 17:15:14 CET
Yes I mean in Mageia Team.

Keywords: (none) => Junior_job

Matthieu Nguyen 2014-07-21 17:05:50 CEST

Summary: [Update Request] mono-flickrnet version to 3.7 => [Update Request] mono-flickrnet version to latest 3.X

Matthieu Nguyen 2014-07-21 17:17:31 CEST

Blocks: (none) => 11253

Comment 4 Barry Jackson 2014-07-22 12:19:11 CEST
(In reply to Matthieu Nguyen from comment #0)
> Hello. I've been trying to work on making F-Spot compile again under Mageia
> and noticed that the FlickrNet API (mono-flickrnet) delivered in MGA4 is
> still 2.1.5, while the 3.x releases have been stable since 2012. Current
> stable is 3.7. Would there be a way to update (or provide 3.7 as a separate
> package)?

Where are you finding 3.7 sources?

CC: (none) => zen25000

Comment 5 Matthieu Nguyen 2014-07-22 12:53:24 CEST
(In reply to Barry Jackson from comment #4)
> (In reply to Matthieu Nguyen from comment #0)
> > Hello. I've been trying to work on making F-Spot compile again under Mageia
> > and noticed that the FlickrNet API (mono-flickrnet) delivered in MGA4 is
> > still 2.1.5, while the 3.x releases have been stable since 2012. Current
> > stable is 3.7. Would there be a way to update (or provide 3.7 as a separate
> > package)?
> 
> Where are you finding 3.7 sources?

I would say they are on http://flickrnet.codeplex.com/ Latest stable is now 3.13 (and supports the recent Yahoo change where all APIs are accessed via https-only)
Comment 6 Barry Jackson 2014-07-22 18:31:37 CEST
OK - then I'm very lost :\

The 3.13 zip file on that page contains 3 .dll files and a .chm  and does not follow the format of the 2.1.5 source. It seems to be aimed a Windows maybe?

If you have any clues how to use the files in the 3.13 zip it would help immensely :)

i.e. How would would you install it directly?
Given this info. I will try to package it.
Comment 7 Matthieu Nguyen 2014-07-22 19:41:02 CEST
The zip file you mention would be the binary package. The .dll files are not aimed at windows, but at any .NET runtime (which mono is, that's how a .NET DLL can be run under Linux :) )

From the 2.1.5 SRPM it looks like the packagers used to get all the source files and perform the compilation as part of the build (mcs is the mono compiler).

If you want to download the 3.13 sources, you'd have to go to the "Source Control" tab, check the commit history, select the commit that matches the target release you want, and hit the "Download" button to obtain a source snapshot.

Since the DLL are meant to be portable and only require the mono runtime (pretty much like a Java .jar file), I think it is ok to use the DLL files directly.

This means that you can bypass the "gmcs" step that compiles the .cs files into the FlickrNet.dll. Instead, you can use the .dll directly, generate the pkgconfig file, pass the DLL to gacutil to register it to the mono runtime.

So basically, if I were to install it manually myself:

1. Download the 3.13 binary release from flickrnet.codeplex.com
2. unzip in my ~/tmp/FlickrNet
3. go to ~/tmp/FlickrNet/
4. gacutil -i FlickrNet.dll -package flickrnet
5. write a flickrnet.pc file and put it under /usr/share/pkgconfig

:)
Comment 8 Barry Jackson 2014-07-23 00:52:49 CEST
(In reply to Matthieu Nguyen from comment #7)
> The zip file you mention would be the binary package. The .dll files are not
> aimed at windows, but at any .NET runtime (which mono is, that's how a .NET
> DLL can be run under Linux :) )
> 
> From the 2.1.5 SRPM it looks like the packagers used to get all the source
> files and perform the compilation as part of the build (mcs is the mono
> compiler).
> 
Thanks - yes that seems to be the case.

> If you want to download the 3.13 sources, you'd have to go to the "Source
> Control" tab, check the commit history, select the commit that matches the
> target release you want, and hit the "Download" button to obtain a source
> snapshot.

I have done this, however the compile fails muttering about the namespace already containing references to some files: http://mtf.no-ip.co.uk/pub/linux/barjac/distrib/cauldron/x86_64/log/mono-flickrnet-3.13.0-2.mga5.src.rpm/build.0.20140722223915.log
I tried filtering these out of the source list and then hit the reverse:
http://mtf.no-ip.co.uk/pub/linux/barjac/distrib/cauldron/x86_64/log/mono-flickrnet-3.13.0-3.mga5.src.rpm/build.0.20140722224546.log

So I gave up for now with that approach - any ideas?

> Since the DLL are meant to be portable and only require the mono runtime
> (pretty much like a Java .jar file), I think it is ok to use the DLL files
> directly.

I also have done this, and have an installable package, however I am not convinced about using pre-compliled binaries - as this is not allowed.

> 
> This means that you can bypass the "gmcs" step that compiles the .cs files
> into the FlickrNet.dll. Instead, you can use the .dll directly, generate the
> pkgconfig file, pass the DLL to gacutil to register it to the mono runtime.
> 
> So basically, if I were to install it manually myself:
> 
> 1. Download the 3.13 binary release from flickrnet.codeplex.com
> 2. unzip in my ~/tmp/FlickrNet
> 3. go to ~/tmp/FlickrNet/
> 4. gacutil -i FlickrNet.dll -package flickrnet
> 5. write a flickrnet.pc file and put it under /usr/share/pkgconfig
> 
> :)

Very informative and has helped a great deal - many thanks. :)

Please test this built using the pre-built 3.13 binary .zip:

http://mtf.no-ip.co.uk/pub/linux/barjac/distrib/cauldron/x86_64/media/extra/release/mono-flickrnet-3.13.0-1.mga5.noarch.rpm
Comment 9 Matthieu Nguyen 2014-07-23 09:13:44 CEST
If you really want to compile the sources, I think you need to:

1. go to the FlickrNet folder
2. xbuild FlickrNet.csproj

This should give you the FlickrNet.dll and FlickrNet.dll.mdb files in bin/Debug/

I'll give a go at the cauldron rpm :)
Comment 10 Matthieu Nguyen 2014-07-23 11:17:34 CEST
Looks like the rpm installed ok. F-spot "autoconf" found the proper version via pkg-config, monodevelop sees the reference properly, f-spot compiles.

Guess this earns a "works on my machine" stamp :)
Comment 11 Barry Jackson 2014-07-23 21:19:39 CEST
(In reply to Matthieu Nguyen from comment #9)
> If you really want to compile the sources,

We must :)

> I think you need to:
> 
> 1. go to the FlickrNet folder
> 2. xbuild FlickrNet.csproj
>
> This should give you the FlickrNet.dll and FlickrNet.dll.mdb files in
> bin/Debug/

Great - that works fine!
Comment 12 Barry Jackson 2014-07-24 01:02:03 CEST
mono-flickrnet-3.13.0-1.mga5 is now in Cauldron - thanks for all your help.
Please test and if all is OK I will look at a backport for Mageia 4 in due course.

Assignee: bugsquad => zen25000

Comment 13 Matthieu Nguyen 2014-07-24 15:21:17 CEST
Cauldron package is labeled 3.13, but the DLL is installed under /usr/lib/mono/gac/FlickrNet/3.5.0.0__2491df59efa5d132.

Were the sources taken from http://flickrnet.codeplex.com/SourceControl/changeset/view/106266

?
Comment 14 Barry Jackson 2014-07-24 15:26:33 CEST
Yes - with:
svn co -r 106266 https://flickrnet.svn.codeplex.com/svn mono-flickrnet-3.13.0
Comment 15 Barry Jackson 2014-07-24 15:28:12 CEST
That commit had a reference to 3.13.0 which is why I selected it.
Comment 16 Matthieu Nguyen 2014-07-24 16:01:44 CEST
Seems like an "upstream" issue. The AssemblyInfo.cs file shows a version of 3.5.0.0. I've opened an issue on Codeplex to notify them

https://flickrnet.codeplex.com/workitem/35416
Comment 17 Barry Jackson 2014-07-24 17:31:11 CEST
Yes - many thanks!
I have patched AssemblyInfo.cs and updated and pushed the package. It now seems to behave like the one built from the upstream binaries.
Barry Jackson 2014-09-07 21:14:33 CEST

Keywords: Junior_job => Backport

Comment 18 Barry Jackson 2014-12-21 12:07:46 CET
@Matthieu
I have left this on the back burner as regards Mageia4 since f-spot seems to be dead. Do you still feel this should be backported to Mga4?
Comment 19 Matthieu Nguyen 2014-12-21 12:49:21 CET
(In reply to Barry Jackson from comment #18)
> @Matthieu
> I have left this on the back burner as regards Mageia4 since f-spot seems to
> be dead. Do you still feel this should be backported to Mga4?

Actually, I see that there has been recent activity on the github master in order to make it compile on more recent distros. I haven't had time to check if it completely solves the compilation problems we had before (looks like a cherry-pick of my mga fixes was taken, not the full pull request. I need to look into that).

Also, Stephen has indicated in the mailing list that he knows who to contact in order to update the main f-spot.org website with new branch info and publish a new release. So I would say f-spot is not dead, still in the process of being revived :).

https://github.com/mono/f-spot/commits/master

So the backport would still be required, in that case.
Comment 20 Barry Jackson 2014-12-21 13:13:39 CET
Ah OK thanks - seems I was cloning your git not upstream master when checking out f-spot - I had not reverted my script since changing it some time ago. /o\

I will see how current master builds.
Comment 21 Matthieu Nguyen 2015-07-03 14:53:07 CEST
With mageia5 out the door now, I think the issue can be closed, since f-spot couldn't be backported to mga4 either in time. Having 3.13 in mga5 is good enough, I'd say :)
Comment 22 Barry Jackson 2015-07-03 14:55:37 CEST
Yes I agree.

Closing as old.

Status: NEW => RESOLVED
Resolution: (none) => OLD


Note You need to log in before you can comment on or make changes to this bug.