Bug 1135654 - Review Request: libpuma - Library for parsing and manipulating C/C++ source code
Summary: Review Request: libpuma - Library for parsing and manipulating C/C++ source code
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: Fedora
Classification: Fedora
Component: Package Review
Version: rawhide
Hardware: All
OS: Linux
medium
medium
Target Milestone: ---
Assignee: Tim Lauridsen
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2014-08-29 22:45 UTC by Jerry James
Modified: 2014-11-01 16:32 UTC (History)
4 users (show)

Fixed In Version: libpuma-1.2-3.fc21
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2014-11-01 16:32:37 UTC
Type: ---
Embargoed:
tim.lauridsen: fedora-review+
gwync: fedora-cvs+


Attachments (Terms of Use)

Description Jerry James 2014-08-29 22:45:07 UTC
Spec URL: https://jjames.fedorapeople.org/libpuma/libpuma.spec
SRPM URL: https://jjames.fedorapeople.org/libpuma/libpuma-1.2-1.fc22.src.rpm
Fedora Account System Username: jjames
Description: PUMA is a library of C++ classes for parsing and manipulating C/C++ source code.  It provides different levels of analyzing source code, i.e. lexical, syntactical, and semantical analyses.  Additionally, PUMA contains its own C preprocessor following the macro language understood by the GNU C preprocessor (cpp).

The parsers for C and C++ are based on an extensible recursive descent parser architecture that can be easily adapted for your own needs by inheriting from one of the parsers.  They are oriented on the ISO/IEC standards defined in ISO/IEC 9899:1999(E) and ISO/IEC 14882:1998(E) but also supporting a list of extensions to the C and C++ languages.  The information about the source code being analyzed is organized in an attributed syntax tree referring to a separate structure of semantic information.

For the purpose of manipulating source code PUMA provides a syntax based mechanism for searching code structures.  Manipulations on the source code can be collected and validated before executing them in a single transaction.

Comment 1 Jerry James 2014-10-02 18:10:52 UTC
This review has now been assigned for over a month with no action.  Will you be able to start the review in the next week?  If not, please release it.

Comment 2 Jerry James 2014-10-13 17:42:14 UTC
In accordance with the policy for stalled reviews, where the reviewer is not responding, I note that there was no action from the reviewer for one month prior to Comment 1, and that more than a week has passed since, still with no action and no communication from the reviewer.  Therefore, I am invoking
http://fedoraproject.org/wiki/Package_maintainer_policy#Reviewer_not_responding

This review has been reset to the unassigned state.

Comment 3 Michael Schwendt 2014-10-14 10:55:39 UTC
> %package doc
> Summary:        Documentation for %{name}
> Requires:       %{name}%{?_isa} = %{version}-%{release}
> BuildArch:      noarch

It is not just inconvenient to hardcode such a dependency in a Documentation package, so the package cannot be installed without pulling in lots of dependencies. Please keep doc packages free of such deps unless the base app is strictly required to display the doc files.

A "noarch" subpackage _cannot_ depend on %{?_isa}, because it may be built on any arch and is put into all repos for different archs.


> Name:           libpuma
> # The generated config depends on a specific version of gcc/g++
> Requires:       gcc-c++ = %{gccver}

Here %{?_isa} would make sense. The generated .config file (_not_ in libpuma package btw) seems arch-specific, subpackage "-aspectc++" (which is not multi-lib) requires arch-specific libpuma, so libpuma ought to require the arch-specific compiler, too.


> # Fix the FSF's address
> for f in $(grep -FRl 'Temple Place' .); do
> ...
>   touch -r $f.orig $f
> ...

Nasty trap. ;)

Seeing this I wondered about the license file, and indeed you modify the license file which must not be done:

  https://fedoraproject.org/wiki/Common_Rpmlint_issues#incorrect-fsf-address

Comment 4 Jerry James 2014-10-15 16:29:59 UTC
(In reply to Michael Schwendt from comment #3)
> It is not just inconvenient to hardcode such a dependency in a Documentation
> package, so the package cannot be installed without pulling in lots of
> dependencies. Please keep doc packages free of such deps unless the base app
> is strictly required to display the doc files.

Okay, I have removed this dependency.

> Here %{?_isa} would make sense. The generated .config file (_not_ in libpuma
> package btw) seems arch-specific, subpackage "-aspectc++" (which is not
> multi-lib) requires arch-specific libpuma, so libpuma ought to require the
> arch-specific compiler, too.

No, see bug 831383.  I have instead added arch-specific dependencies on libstdc++-devel and glibc-devel.  (The dependency on libgcc isn't needed, because that comes via libstdc++-devel -> libstdc++ -> libgcc.)

The generated puma.config file is a bit more problematic.  You are correct that it should be in the main package rather than in the aspectc++ subpackage.  But that breaks multilib, since the 32-bit and 64-bit versions of that file will differ.  I don't think that file should be in %{_sysconfdir} anyway.  It isn't intended to be edited by humans.  I have moved it to %{_libdir}/libpuma instead, which will work with multilib.  Does that sound reasonable?

> Nasty trap. ;)
> 
> Seeing this I wondered about the license file, and indeed you modify the
> license file which must not be done:
> 
>   https://fedoraproject.org/wiki/Common_Rpmlint_issues#incorrect-fsf-address

I've had reviewers of other packages insist that I fix the address, so this was a preemptive strike to avoid taking flak from the reviewer of this package.  That didn't work out so well. :-)  I'm going to remove the address changing code, and just complain to upstream about it.  It looks like upstream is currently recovering from some kind of website breakage, and their bugzilla is offline.  It may take a few days to alert them to the problem.

Thanks for the feedback!  New URLs:
Spec URL: https://jjames.fedorapeople.org/libpuma/libpuma.spec
SRPM URL: https://jjames.fedorapeople.org/libpuma/libpuma-1.2-2.fc22.src.rpm

Comment 5 Michael Schwendt 2014-10-15 19:26:03 UTC
> bug 831383

Fixed in 2012. gcc is not multilib anymore, i.e. no multilib package causes the multilib repo composer to pull it it anymore.

# yum list gcc
Loaded plugins: auto-update-debuginfo, langpacks
Installed Packages
gcc.x86_64                    4.9.1-11.fc21                     @updates-testing

Of course, that also means %{?_isa} doesn't add any benefit, since there is only once gcc package to choose. ;-)

Comment 6 Tim Lauridsen 2014-10-17 17:59:33 UTC
Initial comments.

Looks like the Source0 url is broken

http://aspectc.org/releases/1.2/ac-woven-1.2.tar.gz is working

but the ftp address is not working

a little unsure about 

%license aspectc++/Puma/COPYING

in %files, the Fedora talk about license files should go in %doc, but I might have missed something.

Comment 7 Jerry James 2014-10-17 18:33:30 UTC
(In reply to Tim Lauridsen from comment #6)
> Initial comments.
> 
> Looks like the Source0 url is broken
> 
> http://aspectc.org/releases/1.2/ac-woven-1.2.tar.gz is working
> 
> but the ftp address is not working

Yes, aspectc.org suffered some kind of site failure just a few days ago.  I haven't heard the details, but they've been putting stuff back together.  If the ftp site doesn't come back soon, I will switch the URL to the HTTP version you gave.

> a little unsure about 
> 
> %license aspectc++/Puma/COPYING
> 
> in %files, the Fedora talk about license files should go in %doc, but I
> might have missed something.

See https://fedorahosted.org/fpc/ticket/411.

Comment 8 Tim Lauridsen 2014-10-18 06:28:31 UTC
Package Review
==============

Legend:
[x] = Pass, [!] = Fail, [-] = Not applicable, [?] = Not evaluated
[ ] = Manual review needed


Issues:
=======
- Header files in -devel subpackage, if present.
  Note: libpuma-doc : /usr/share/doc/libpuma-
  doc/examples/annotator/Transformer.h libpuma-doc : /usr/share/doc/libpuma-
  doc/examples/ccparser/IncludeVisitor.h libpuma-doc : /usr/share/doc/libpuma-
  doc/examples/sync/SyncBuilder.h libpuma-doc : /usr/share/doc/libpuma-
  doc/examples/sync/SyncKeywordRecognizer.h libpuma-doc : /usr/share/doc
  /libpuma-doc/examples/sync/SyncParser.h libpuma-doc : /usr/share/doc
  /libpuma-doc/examples/sync/SyncSemantic.h libpuma-doc : /usr/share/doc
  /libpuma-doc/examples/sync/SyncSyntax.h libpuma-doc : /usr/share/doc
  /libpuma-doc/examples/sync/SyncTokens.h libpuma-doc : /usr/share/doc
  /libpuma-doc/examples/sync/SyncTransformer.h libpuma-doc : /usr/share/doc
  /libpuma-doc/examples/sync/SyncTree.h
  See: http://fedoraproject.org/wiki/Packaging/Guidelines#DevelPackages
- If (and only if) the source package includes the text of the license(s) in
  its own file, then that file, containing the text of the license(s) for the
  package is included in %doc.
  Note: Cannot find COPYING in rpm(s)
  See:
  http://fedoraproject.org/wiki/Packaging/LicensingGuidelines#License_Text

OK: https://fedorahosted.org/fpc/ticket/411

===== MUST items =====

C/C++:
[x]: Package does not contain kernel modules.
[x]: Package contains no static executables.
[x]: ldconfig called in %post and %postun if required.
[x]: Package does not contain any libtool archives (.la)
[x]: Rpath absent or only used for internal libs.
[x]: Development (unversioned) .so files in -devel subpackage, if present.

Generic:
[x]: Package is licensed with an open-source compatible license and meets
     other legal requirements as defined in the legal section of Packaging
     Guidelines.
[x]: License field in the package spec file matches the actual license.
     Note: Checking patched sources after %prep for licenses. Licenses found:
     "GPL (v2 or later) (with incorrect FSF address)", "LGPL (v2 or later)
     (with incorrect FSF address)", "Unknown or generated", "GPL (v3 or
     later)". 790 files have unknown license. Detailed output of licensecheck
     in /home/tim/udv/reviews/1135654-libpuma/licensecheck.txt
[x]: License file installed when any subpackage combination is installed.
[x]: Package requires other packages for directories it uses.
     Note: No known owner of /usr/share/licenses
[x]: Package must own all directories that it creates.
     Note: Directories without known owners: /usr/share/licenses
[x]: %build honors applicable compiler flags or justifies otherwise.
[x]: Package contains no bundled libraries without FPC exception.
[x]: Changelog in prescribed format.
[x]: Sources contain only permissible code or content.
[-]: Package contains desktop file if it is a GUI application.
[x]: Development files must be in a -devel package
[x]: Package uses nothing in %doc for runtime.
[x]: Package consistently uses macros (instead of hard-coded directory names).
[x]: Package is named according to the Package Naming Guidelines.
[x]: Package does not generate any conflict.
[x]: Package obeys FHS, except libexecdir and /usr/target.
[-]: If the package is a rename of another package, proper Obsoletes and
     Provides are present.
[x]: Requires correct, justified where necessary.
[x]: Spec file is legible and written in American English.
[-]: Package contains systemd file(s) if in need.
[x]: Useful -debuginfo package or justification otherwise.
[x]: Package is not known to require an ExcludeArch tag.
[x]: Large documentation must go in a -doc subpackage. Large could be size
     (~1MB) or number of files.
     Note: Documentation size is 20480 bytes in 2 files.
[x]: Package complies to the Packaging Guidelines
[x]: Package successfully compiles and builds into binary rpms on at least one
     supported primary architecture.
[x]: Package installs properly.
[x]: Rpmlint is run on all rpms the build produces.
     Note: There are rpmlint messages (see attachment).
[x]: Package does not own files or directories owned by other packages.
[x]: All build dependencies are listed in BuildRequires, except for any that
     are listed in the exceptions section of Packaging Guidelines.
[x]: Package uses either %{buildroot} or $RPM_BUILD_ROOT
[x]: Package does not run rm -rf %{buildroot} (or $RPM_BUILD_ROOT) at the
     beginning of %install.
[x]: Macros in Summary, %description expandable at SRPM build time.
[x]: Package does not contain duplicates in %files.
[x]: Permissions on files are set properly.
[x]: Package use %makeinstall only when make install' ' DESTDIR=... doesn't
     work.
[x]: Package is named using only allowed ASCII characters.
[x]: Package do not use a name that already exist
[x]: Package is not relocatable.
[x]: Sources used to build the package match the upstream source, as provided
     in the spec URL.
[x]: Spec file name must match the spec package %{name}, in the format
     %{name}.spec.
[x]: File names are valid UTF-8.
[x]: Packages must not store files under /srv, /opt or /usr/local

===== SHOULD items =====

Generic:
[!]: Sources can be downloaded from URI in Source: tag
     Note: Could not download Source0: ftp://akut.aspectc.org/releases/1.2/ac-
     woven-1.2.tar.gz
     See: http://fedoraproject.org/wiki/Packaging:Guidelines#Tags
[x]: If the source package does not include license text(s) as a separate file
     from upstream, the packager SHOULD query upstream to include it.
[x]: Final provides and requires are sane (see attachments).
[x]: Fully versioned dependency in subpackages if applicable.
     Note: No Requires: %{name}%{?_isa} = %{version}-%{release} in libpuma-doc
[?]: Package functions as described.
[x]: Latest version is packaged.
[x]: Package does not include license text files separate from upstream.
[x]: Patches link to upstream bugs/comments/lists or are otherwise justified.
[x]: Scriptlets must be sane, if used.
[x]: SourceX tarball generation or download is documented.
     Note: Package contains tarball without URL, check comments
[?]: Description and summary sections in the package spec file contains
     translations for supported Non-English languages, if available.
[?]: Package should compile and build into binary rpms on all supported
     architectures.
[x]: %check is present and all tests pass.
[x]: Packages should try to preserve timestamps of original installed files.
[x]: Packager, Vendor, PreReq, Copyright tags should not be in spec file
[x]: Reviewer should test that the package builds in mock.
[x]: Buildroot is not present
[x]: Package has no %clean section with rm -rf %{buildroot} (or
     $RPM_BUILD_ROOT)
[x]: Dist tag is present (not strictly required in GL).
[x]: No file requires outside of /etc, /bin, /sbin, /usr/bin, /usr/sbin.
[x]: Uses parallel make %{?_smp_mflags} macro.
[x]: SourceX is a working URL.
[x]: Spec use %global instead of %define unless justified.

===== EXTRA items =====

Generic:
[x]: Rpmlint is run on all installed packages.
     Note: There are rpmlint messages (see attachment).
[x]: Large data in /usr/share should live in a noarch subpackage if package is
     arched.
[x]: Spec file according to URL is the same as in SRPM.


Rpmlint
-------
Checking: libpuma-1.2-2.fc21.x86_64.rpm
          libpuma-devel-1.2-2.fc21.x86_64.rpm
          libpuma-doc-1.2-2.fc21.noarch.rpm
          aspectc++-1.2-2.fc21.x86_64.rpm
          libpuma-1.2-2.fc21.src.rpm
libpuma.x86_64: E: explicit-lib-dependency libstdc++-devel(x86-64)
libpuma.x86_64: W: spelling-error %description -l en_US semantical -> semantically, semantics, semanticist
libpuma.x86_64: W: spelling-error %description -l en_US preprocessor -> processor, predecessor, process's
libpuma.x86_64: W: spelling-error %description -l en_US cpp -> cop, pp, cps
libpuma.x86_64: W: spelling-error %description -l en_US parsers -> parser, parses, parers
libpuma.x86_64: E: incorrect-fsf-address /usr/share/licenses/libpuma/COPYING
libpuma.x86_64: E: incorrect-fsf-address /usr/share/doc/libpuma/README
libpuma-devel.x86_64: W: only-non-binary-in-usr-lib
libpuma-devel.x86_64: W: no-documentation
libpuma-doc.noarch: E: incorrect-fsf-address /usr/share/doc/libpuma-doc/examples/sync/SyncKeywordTab.ora
libpuma-doc.noarch: E: incorrect-fsf-address /usr/share/doc/libpuma-doc/examples/sync/SyncTransformer.cc
libpuma-doc.noarch: E: incorrect-fsf-address /usr/share/doc/libpuma-doc/examples/sync/SyncKeywordRecognizer.h
libpuma-doc.noarch: E: incorrect-fsf-address /usr/share/doc/libpuma-doc/examples/sync/SyncTokens.h
libpuma-doc.noarch: E: incorrect-fsf-address /usr/share/doc/libpuma-doc/examples/sync/SyncSemantic.cc
libpuma-doc.noarch: E: incorrect-fsf-address /usr/share/doc/libpuma-doc/examples/sync/SyncBuilder.cc
libpuma-doc.noarch: E: incorrect-fsf-address /usr/share/doc/libpuma-doc/examples/sync/SyncBuilder.h
libpuma-doc.noarch: E: incorrect-fsf-address /usr/share/doc/libpuma-doc/examples/sync/SyncSyntax.cc
libpuma-doc.noarch: E: incorrect-fsf-address /usr/share/doc/libpuma-doc/examples/sync/SyncSemantic.h
libpuma-doc.noarch: E: incorrect-fsf-address /usr/share/doc/libpuma-doc/examples/sync/SyncTree.h
libpuma-doc.noarch: E: incorrect-fsf-address /usr/share/doc/libpuma-doc/examples/sync/SyncSyntax.h
libpuma-doc.noarch: E: incorrect-fsf-address /usr/share/doc/libpuma-doc/examples/sync/SyncKeywordRecognizer.cc
libpuma-doc.noarch: E: incorrect-fsf-address /usr/share/doc/libpuma-doc/examples/sync/SyncTree.cc
libpuma-doc.noarch: E: incorrect-fsf-address /usr/share/doc/libpuma-doc/examples/sync/SyncParser.h
libpuma-doc.noarch: E: incorrect-fsf-address /usr/share/doc/libpuma-doc/examples/parser/parser.cc
libpuma-doc.noarch: E: incorrect-fsf-address /usr/share/doc/libpuma-doc/examples/sync/SyncTransformer.h
aspectc++.x86_64: W: spelling-error %description -l en_US AspectC -> Aspect C, Aspect, Aspects
aspectc++.x86_64: W: spelling-error %description -l en_US recognizees -> recognizes, recognize es, recognize-es
libpuma.src: W: spelling-error %description -l en_US semantical -> semantically, semantics, semanticist
libpuma.src: W: spelling-error %description -l en_US preprocessor -> processor, predecessor, process's
libpuma.src: W: spelling-error %description -l en_US cpp -> cop, pp, cps
libpuma.src: W: spelling-error %description -l en_US parsers -> parser, parses, parers
libpuma.src: W: invalid-url Source0: ftp://akut.aspectc.org/releases/1.2/ac-woven-1.2.tar.gz <urlopen error ftp error: timed out>
5 packages and 0 specfiles checked; 19 errors, 13 warnings.




Rpmlint (installed packages)
----------------------------
# rpmlint libpuma libpuma-devel libpuma-doc aspectc++
libpuma.x86_64: E: explicit-lib-dependency libstdc++-devel(x86-64)
libpuma.x86_64: W: spelling-error %description -l en_US semantical -> semantically, semantics, semanticist
libpuma.x86_64: W: spelling-error %description -l en_US preprocessor -> processor, predecessor, process's
libpuma.x86_64: W: spelling-error %description -l en_US cpp -> cop, pp, cps
libpuma.x86_64: W: spelling-error %description -l en_US parsers -> parser, parses, parers
libpuma.x86_64: E: incorrect-fsf-address /usr/share/licenses/libpuma/COPYING
libpuma.x86_64: E: incorrect-fsf-address /usr/share/doc/libpuma/README
libpuma-devel.x86_64: W: only-non-binary-in-usr-lib
libpuma-devel.x86_64: W: no-documentation
libpuma-doc.noarch: E: incorrect-fsf-address /usr/share/doc/libpuma-doc/examples/sync/SyncKeywordTab.ora
libpuma-doc.noarch: E: incorrect-fsf-address /usr/share/doc/libpuma-doc/examples/sync/SyncTransformer.cc
libpuma-doc.noarch: E: incorrect-fsf-address /usr/share/doc/libpuma-doc/examples/sync/SyncKeywordRecognizer.h
libpuma-doc.noarch: E: incorrect-fsf-address /usr/share/doc/libpuma-doc/examples/sync/SyncTokens.h
libpuma-doc.noarch: E: incorrect-fsf-address /usr/share/doc/libpuma-doc/examples/sync/SyncSemantic.cc
libpuma-doc.noarch: E: incorrect-fsf-address /usr/share/doc/libpuma-doc/examples/sync/SyncBuilder.cc
libpuma-doc.noarch: E: incorrect-fsf-address /usr/share/doc/libpuma-doc/examples/sync/SyncBuilder.h
libpuma-doc.noarch: E: incorrect-fsf-address /usr/share/doc/libpuma-doc/examples/sync/SyncSyntax.cc
libpuma-doc.noarch: E: incorrect-fsf-address /usr/share/doc/libpuma-doc/examples/sync/SyncSemantic.h
libpuma-doc.noarch: E: incorrect-fsf-address /usr/share/doc/libpuma-doc/examples/sync/SyncTree.h
libpuma-doc.noarch: E: incorrect-fsf-address /usr/share/doc/libpuma-doc/examples/sync/SyncSyntax.h
libpuma-doc.noarch: E: incorrect-fsf-address /usr/share/doc/libpuma-doc/examples/sync/SyncKeywordRecognizer.cc
libpuma-doc.noarch: E: incorrect-fsf-address /usr/share/doc/libpuma-doc/examples/sync/SyncTree.cc
libpuma-doc.noarch: E: incorrect-fsf-address /usr/share/doc/libpuma-doc/examples/sync/SyncParser.h
libpuma-doc.noarch: E: incorrect-fsf-address /usr/share/doc/libpuma-doc/examples/parser/parser.cc
libpuma-doc.noarch: E: incorrect-fsf-address /usr/share/doc/libpuma-doc/examples/sync/SyncTransformer.h
aspectc++.x86_64: W: spelling-error %description -l en_US AspectC -> Aspect C, Aspect, Aspects
aspectc++.x86_64: W: spelling-error %description -l en_US recognizees -> recognizes, recognize es, recognize-es
4 packages and 0 specfiles checked; 19 errors, 8 warnings.
# echo 'rpmlint-done:'



Requires
--------
libpuma (rpmlib, GLIBC filtered):
    /sbin/ldconfig
    gcc-c++
    glibc-devel(x86-64)
    libc.so.6()(64bit)
    libgcc_s.so.1()(64bit)
    libgcc_s.so.1(GCC_3.0)(64bit)
    libgcc_s.so.1(GCC_4.2.0)(64bit)
    libm.so.6()(64bit)
    libstdc++-devel(x86-64)
    libstdc++.so.6()(64bit)
    libstdc++.so.6(CXXABI_1.3)(64bit)
    rtld(GNU_HASH)

libpuma-devel (rpmlib, GLIBC filtered):
    libPuma.so.0()(64bit)
    libpuma(x86-64)

libpuma-doc (rpmlib, GLIBC filtered):

aspectc++ (rpmlib, GLIBC filtered):
    libPuma.so.0()(64bit)
    libc.so.6()(64bit)
    libdl.so.2()(64bit)
    libgcc_s.so.1()(64bit)
    libgcc_s.so.1(GCC_3.0)(64bit)
    libm.so.6()(64bit)
    libpuma(x86-64)
    libstdc++.so.6()(64bit)
    libstdc++.so.6(CXXABI_1.3)(64bit)
    libxml2.so.2()(64bit)
    libxml2.so.2(LIBXML2_2.4.30)(64bit)
    libxml2.so.2(LIBXML2_2.6.0)(64bit)
    libxml2.so.2(LIBXML2_2.6.8)(64bit)
    libz.so.1()(64bit)
    rtld(GNU_HASH)



Provides
--------
libpuma:
    libPuma.so.0()(64bit)
    libpuma
    libpuma(x86-64)

libpuma-devel:
    libpuma-devel
    libpuma-devel(x86-64)

libpuma-doc:
    libpuma-doc

aspectc++:
    aspectc++
    aspectc++(x86-64)

Comment 9 Tim Lauridsen 2014-10-18 06:35:32 UTC
Only issues is there source cant be checked on the spec Source URL


got source from http://aspectc.org/releases/1.2/ac-woven-1.2.tar.gz

174aa5f552edaff8b1335fe6b1adfff0eb9d170076401ab6bcf7f85a5edee8b4  ac-woven-1.2.tar.gz
174aa5f552edaff8b1335fe6b1adfff0eb9d170076401ab6bcf7f85a5edee8b4  1135654-libpuma/srpm-unpacked/ac-woven-1.2.tar.gz


[x] Source match upstream


APPROVED

Comment 10 Jerry James 2014-10-21 02:27:32 UTC
Thank you very much for the review, Tim.  If the FTP site isn't back up by the time I import this package, I will change the source URL to the HTTP version.

Comment 11 Jerry James 2014-10-21 02:29:21 UTC
New Package SCM Request
=======================
Package Name: libpuma
Short Description: Library for parsing and manipulating C/C++ source code
Upstream URL: http://aspectc.org/
Owners: jjames
Branches: f21
InitialCC:

Comment 12 Gwyn Ciesla 2014-10-21 11:49:37 UTC
Git done (by process-git-requests).

Comment 13 Fedora Update System 2014-10-21 17:58:43 UTC
libpuma-1.2-2.fc21 has been submitted as an update for Fedora 21.
https://admin.fedoraproject.org/updates/libpuma-1.2-2.fc21

Comment 14 Fedora Update System 2014-10-22 19:13:57 UTC
libpuma-1.2-2.fc21 has been pushed to the Fedora 21 testing repository.

Comment 15 Fedora Update System 2014-10-27 08:17:06 UTC
libpuma-1.2-3.fc21 has been pushed to the Fedora 21 testing repository.

Comment 16 Fedora Update System 2014-11-01 16:32:37 UTC
libpuma-1.2-3.fc21 has been pushed to the Fedora 21 stable repository.


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