Bug 19524 - Merge proyvind's mgarepo work into main mgarepo and prepare new release
Summary: Merge proyvind's mgarepo work into main mgarepo and prepare new release
Status: NEW
Alias: None
Product: Infrastructure
Classification: Unclassified
Component: BuildSystem (show other bugs)
Version: unspecified
Hardware: All Linux
Priority: Normal enhancement
Target Milestone: ---
Assignee: papoteur
QA Contact:
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2016-10-04 14:11 CEST by Neal Gompa
Modified: 2016-10-10 17:07 CEST (History)
3 users (show)

See Also:
Source RPM:
CVE:
Status comment:


Attachments

Description Neal Gompa 2016-10-04 14:11:00 CEST
Description of problem:
proyvind has made substantial improvements to mgarepo in his fork on GitHub[1]. Please merge the "git" branch there with "master" on our canonical repository[2]. Release as 1.13.1 once merged.

Some of the important new features are:
* bidirectional git-svn for package sources
* export to github for private work
* support for using urpmi or dnf to install builddeps of package
* proper parsing of the svn log
* Proper authors for RPM changelogs ("name <email>" instead of "username <username>")
* various fixes for python3 and reliability

[1]: https://github.com/DrakXtools/mgarepo.git
[2]: http://gitweb.mageia.org/software/build-system/mgarepo/
Comment 1 Neal Gompa 2016-10-04 14:11:48 CEST
I've been personally testing this code and it works for me doing all the standard things (rpmlog, checkout, sync, submit, etc.)
Comment 2 Thomas Backlund 2016-10-04 19:05:16 CEST
(In reply to Neal Gompa from comment #0)
> Description of problem:
> proyvind has made substantial improvements to mgarepo in his fork on
> GitHub[1]. Please merge the "git" branch there with "master" on our
> canonical repository[2]. Release as 1.13.1 once merged.
> 

No blind merges, please...

> Some of the important new features are:
> * bidirectional git-svn for package sources
> * export to github for private work
> * support for using urpmi or dnf to install builddeps of package
> * proper parsing of the svn log

> * Proper authors for RPM changelogs ("name <email>" instead of "username
> <username>")

This is actually done on purpose in current mgarepo to remove one point of email harvesting for spammers.


> * various fixes for python3 and reliability
> 
> [1]: https://github.com/DrakXtools/mgarepo.git
> [2]: http://gitweb.mageia.org/software/build-system/mgarepo/

CC: (none) => tmb

Comment 3 Neal Gompa 2016-10-04 19:54:59 CEST
(In reply to Thomas Backlund from comment #2)
> (In reply to Neal Gompa from comment #0)
> > Description of problem:
> > proyvind has made substantial improvements to mgarepo in his fork on
> > GitHub[1]. Please merge the "git" branch there with "master" on our
> > canonical repository[2]. Release as 1.13.1 once merged.
> > 
> 
> No blind merges, please...
> 

I do not consider this a blind merge from my perspective, as I've been testing his changes on my own workstation as they were being developed. I did not even want to suggest a merge until after all the features were working.

When this first came up a while ago in the dev IRC channel, Papoteur wanted me to verify the code works before he merged it. I'm saying it works.

> > Some of the important new features are:
> > * bidirectional git-svn for package sources
> > * export to github for private work
> > * support for using urpmi or dnf to install builddeps of package
> > * proper parsing of the svn log
> 
> > * Proper authors for RPM changelogs ("name <email>" instead of "username
> > <username>")
> 
> This is actually done on purpose in current mgarepo to remove one point of
> email harvesting for spammers.
> 

There is a switch to flip it back to the current behavior. Alternatively, an alternate format that has "name <username>" could be added and used, instead.
Comment 4 Thomas Backlund 2016-10-04 20:04:16 CEST
(In reply to Neal Gompa from comment #3)
> (In reply to Thomas Backlund from comment #2)
> > (In reply to Neal Gompa from comment #0)
> > > Description of problem:
> > > proyvind has made substantial improvements to mgarepo in his fork on
> > > GitHub[1]. Please merge the "git" branch there with "master" on our
> > > canonical repository[2]. Release as 1.13.1 once merged.
> > > 
> > 
> > No blind merges, please...
> > 
> 
> I do not consider this a blind merge from my perspective, as I've been
> testing his changes on my own workstation as they were being developed. I
> did not even want to suggest a merge until after all the features were
> working.
> 
> When this first came up a while ago in the dev IRC channel, Papoteur wanted
> me to verify the code works before he merged it. I'm saying it works.


Ok, sounds better then...

> 
> > > Some of the important new features are:
> > > * bidirectional git-svn for package sources
> > > * export to github for private work
> > > * support for using urpmi or dnf to install builddeps of package
> > > * proper parsing of the svn log
> > 
> > > * Proper authors for RPM changelogs ("name <email>" instead of "username
> > > <username>")
> > 
> > This is actually done on purpose in current mgarepo to remove one point of
> > email harvesting for spammers.
> > 
> 
> There is a switch to flip it back to the current behavior. Alternatively, an
> alternate format that has "name <username>" could be added and used, instead.

Yeah, doing "name <username>"  could be nicer...
Comment 5 Neal Gompa 2016-10-05 17:48:40 CEST
(In reply to Thomas Backlund from comment #4)
> (In reply to Neal Gompa from comment #3)
> > (In reply to Thomas Backlund from comment #2)
> > > (In reply to Neal Gompa from comment #0)
> > > > Some of the important new features are:
> > > > * bidirectional git-svn for package sources
> > > > * export to github for private work
> > > > * support for using urpmi or dnf to install builddeps of package
> > > > * proper parsing of the svn log
> > > 
> > > > * Proper authors for RPM changelogs ("name <email>" instead of "username
> > > > <username>")
> > > 
> > > This is actually done on purpose in current mgarepo to remove one point of
> > > email harvesting for spammers.
> > > 
> > 
> > There is a switch to flip it back to the current behavior. Alternatively, an
> > alternate format that has "name <username>" could be added and used, instead.
> 
> Yeah, doing "name <username>"  could be nicer...

On the other hand, the "email address" is just <username>@mageia.org. And the name is the value set in the Mageia Identity. Personally, I don't see a problem with having proper changelogs with names and some form of contact address.

As it is, I've had my email address in Fedora packages and there's been no issue. There are some obfuscation techniques that could be done (like swapping @ and . for obviously invalid things), but I don't see a particularly great reason to deny having properly setup changelogs.
Comment 6 papoteur 2016-10-08 14:44:14 CEST
I have updated our gitweb with Per's work.
Thanks
Comment 7 David GEIGER 2016-10-08 17:51:55 CEST
Hello all packagers, so new mgarepo-1.13.1 based on Proyvind's job is now available first on Core/Updates_testing repo for Tests.

Please test if all seems work as it should or report here what is going wrong or if a regression was found, thanks!

CC: (none) => geiger.david68210

Comment 8 David GEIGER 2016-10-09 19:02:22 CEST
First regression found! "mgarepo putsrpm" doesn't work anymore:

$ mgarepo putsrpm kde-cdemu-0.6.2-1.mga6.src.rpm 
Traceback (most recent call last):
  File "/bin/mgarepo", line 97, in <module>
    do_command(parse_options, dispatch_command)
  File "/usr/lib/python3.5/site-packages/MgaRepo/command.py", line 38, in do_command
    main_func(**opt.__dict__)
  File "/bin/mgarepo", line 88, in dispatch_command
    command_module.main()
  File "/usr/lib/python3.5/site-packages/MgaRepo/commands/putsrpm.py", line 53, in main
    do_command(parse_options, put_srpm_cmd)
  File "/usr/lib/python3.5/site-packages/MgaRepo/command.py", line 38, in do_command
    main_func(**opt.__dict__)
  File "/usr/lib/python3.5/site-packages/MgaRepo/commands/putsrpm.py", line 50, in put_srpm_cmd
    logmsg, rename)
  File "/usr/lib/python3.5/site-packages/MgaRepo/rpmutil.py", line 217, in put_srpm
    svn = detectVCS(pkgdirurl)
NameError: name 'pkgdirurl' is not defined
Comment 9 David GEIGER 2016-10-10 17:07:28 CEST
This regression was fixed in mgarepo-1.13.2, thanks to papoteur and Neal :)

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