Hello community,
here is the log from the commit of package perl-Quantum-Superpositions for
openSUSE:Factory checked in at 2018-08-27 13:00:26
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/perl-Quantum-Superpositions (Old)
and /work/SRC/openSUSE:Factory/.perl-Quantum-Superpositions.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "perl-Quantum-Superpositions"
Mon Aug 27 13:00:26 2018 rev:19 rq:631709 version:2.03
Changes:
--------
---
/work/SRC/openSUSE:Factory/perl-Quantum-Superpositions/perl-Quantum-Superpositions.changes
2011-11-21 12:44:53.000000000 +0100
+++
/work/SRC/openSUSE:Factory/.perl-Quantum-Superpositions.new/perl-Quantum-Superpositions.changes
2018-08-27 13:00:27.588888878 +0200
@@ -1,0 +2,11 @@
+Mon Jul 9 05:55:28 UTC 2018 - [email protected]
+
+- updated to 2.03
+ see /usr/share/doc/packages/perl-Quantum-Superpositions/Changes
+
+
+ 2.0.2 Sun Jul 8 15:28:31 CDT 2018
+
+ - POD, thanks for Florian Schlichting
+
+-------------------------------------------------------------------
Old:
----
Quantum-Superpositions-2.02.tar.gz
New:
----
Quantum-Superpositions-2.03.tar.gz
cpanspec.yml
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ perl-Quantum-Superpositions.spec ++++++
--- /var/tmp/diff_new_pack.Y12JZA/_old 2018-08-27 13:00:28.712890104 +0200
+++ /var/tmp/diff_new_pack.Y12JZA/_new 2018-08-27 13:00:28.744890139 +0200
@@ -1,7 +1,7 @@
#
# spec file for package perl-Quantum-Superpositions
#
-# Copyright (c) 2011 SUSE LINUX Products GmbH, Nuernberg, Germany.
+# Copyright (c) 2018 SUSE LINUX GmbH, Nuernberg, Germany.
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
@@ -15,63 +15,125 @@
# Please submit bugfixes or comments via http://bugs.opensuse.org/
#
-# norootforbuild
-
Name: perl-Quantum-Superpositions
-BuildRequires: perl-Class-Multimethods
-BuildRequires: perl-macros
-Version: 2.02
-Release: 266
-Requires: perl-Class-Multimethods
-AutoReqProv: on
-Group: Development/Libraries/Perl
+Version: 2.03
+Release: 0
+%define cpan_name Quantum-Superpositions
+Summary: QM-like superpositions in Perl
License: Artistic-1.0
-Url: http://cpan.org/modules/by-module/Quantum/
-Source0:
http://cpan.org/modules/by-module/Quantum/Quantum-Superpositions-%{version}.tar.gz
+Group: Development/Libraries/Perl
+Url: http://search.cpan.org/dist/Quantum-Superpositions/
+Source0:
https://cpan.metacpan.org/authors/id/L/LE/LEMBARK/%{cpan_name}-%{version}.tar.gz
+Source1: cpanspec.yml
+BuildArch: noarch
BuildRoot: %{_tmppath}/%{name}-%{version}-build
-Summary: Qm-like superpositions for Perl
+BuildRequires: perl
+BuildRequires: perl-macros
+BuildRequires: perl(Class::Multimethods)
+Requires: perl(Class::Multimethods)
%{perl_requires}
%description
-The Quantum::Superpositions module provides a new scalar data
-structure: the superposition. In a metaphor drawn from quantum
-mechanics, superpositions store a collection of values by overlaying
-them in parallel superimposed states within a single scalar variable.
+The Quantum::Superpositions module adds two new operators to Perl: 'any'
+and 'all'.
+
+Each of these operators takes a list of values (states) and superimposes
+them into a single scalar value (a superposition), which can then be stored
+in a standard scalar variable.
+
+The 'any' and 'all' operators produce two distinct kinds of superposition.
+The 'any' operator produces a disjunctive superposition, which may
+(notionally) be in any one of its states at any time, according to the
+needs of the algorithm that uses it.
+
+In contrast, the 'all' operator creates a conjunctive superposition, which
+is always in every one of its states simultaneously.
+
+Superpositions are scalar values and hence can participate in arithmetic
+and logical operations just like any other type of scalar. However, when an
+operation is applied to a superposition, it is applied (notionally) in
+parallel to each of the states in that superposition.
+
+For example, if a superposition of states 1, 2, and 3 is multiplied by 2:
+
+ $result = any(1,2,3) * 2;
+
+the result is a superposition of states 2, 4, and 6. If that result is then
+compared with the value 4:
+
+ if ($result == 4) { print "fore!" }
+
+then the comparison also returns a superposition: one that is both true and
+false (since the equality is true for one of the states of '$result' and
+false for the other two).
+Of course, a value that is both true and false is of no use in an 'if'
+statement, so some mechanism is needed to decide which superimposed boolean
+state should take precedence.
+This mechanism is provided by the two types of superposition available. A
+disjunctive superposition is true if any of its states is true, whereas a
+conjunctive superposition is true only if all of its states are true.
-Authors:
---------
- Damian Conway <[email protected]>
+Thus the previous example does print "fore!", since the 'if' condition is
+equivalent to:
+
+ if (any(2,4,6) == 4)...
+
+It suffices that any one of 2, 4, or 6 is equal to 4, so the condition is
+true and the 'if' block executes.
+
+On the other hand, had the control statement been:
+
+ if (all(2,4,6) == 4)...
+
+the condition would fail, since it is not true that all of 2, 4, and 6 are
+equal to 4.
+
+Operations are also possible between two superpositions:
+
+ if (all(1,2,3)*any(5,6) < 21)
+ { print "no alcohol"; }
+
+ if (all(1,2,3)*any(5,6) < 18)
+ { print "no entry"; }
+
+ if (any(1,2,3)*all(5,6) < 18)
+ { print "under-age" }
+
+In this example, the string "no alcohol" is printed because the
+superposition produced by the multiplication is the Cartesian product of
+the respective states of the two operands: 'all(5,6,10,12,15,18)'. Since
+all of these resultant states are less that 21, the condition is true. In
+contrast, the string "no entry" is not printed, because not all the
+product's states are less than 18.
+
+Note that the type of the first operand determines the type of the result
+of an operation. Hence the third string -- "underage" -- is printed,
+because multiplying a disjunctive superposition by a conjunctive
+superposition produces a result that is disjunctive:
+'any(5,6,10,12,15,18)'. The condition of the 'if' statement asks whether
+any of these values is less than 18, which is true.
%prep
-%setup -n Quantum-Superpositions-%{version}
+%setup -q -n %{cpan_name}-%{version}
+find . -type f ! -name \*.pl -print0 | xargs -0 chmod 644
%build
-for f in `find . -type f -exec grep -l /usr/local/bin/perl \{\} \;` ; do
- rm -f tmp
- sed -e "s:^#!.*/usr/local/bin/perl:#!/usr/bin/perl:g" $f > tmp
- mv -f tmp $f
-done
-perl Makefile.PL
-make %{?_smp_mflags}
-make test
+%{__perl} Makefile.PL INSTALLDIRS=vendor
+%{__make} %{?_smp_mflags}
+
+%check
+%{__make} test
%install
-rm -rf $RPM_BUILD_ROOT
-make DESTDIR=$RPM_BUILD_ROOT install_vendor
+%perl_make_install
%perl_process_packlist
-chmod 644 Changes $RPM_BUILD_ROOT%{perl_vendorlib}/Quantum/Superpositions.pm
-
-%clean
-rm -rf $RPM_BUILD_ROOT
+%perl_gen_filelist
-%files
-%defattr(-, root, root)
-%doc Changes demo
-%doc %{_mandir}/man?/*
-%{perl_vendorlib}/Quantum
-%{perl_vendorarch}/auto/Quantum
+%files -f %{name}.files
+%defattr(-,root,root,755)
+%doc Changes
%changelog
++++++ Quantum-Superpositions-2.02.tar.gz -> Quantum-Superpositions-2.03.tar.gz
++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/Quantum-Superpositions-2.02/Changes
new/Quantum-Superpositions-2.03/Changes
--- old/Quantum-Superpositions-2.02/Changes 2003-04-23 00:45:51.000000000
+0200
+++ new/Quantum-Superpositions-2.03/Changes 2018-07-08 22:28:53.000000000
+0200
@@ -50,3 +50,7 @@
2.01 Tue Apr 22 17:45:31 CDT 2003
- Added diskfree to the demos.
+
+2.0.2 Sun Jul 8 15:28:31 CDT 2018
+
+- POD, thanks for Florian Schlichting
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/Quantum-Superpositions-2.02/MANIFEST
new/Quantum-Superpositions-2.03/MANIFEST
--- old/Quantum-Superpositions-2.02/MANIFEST 2003-04-23 00:53:55.000000000
+0200
+++ new/Quantum-Superpositions-2.03/MANIFEST 2018-07-08 22:30:31.000000000
+0200
@@ -10,3 +10,5 @@
demo/demo_Odder.pl
demo/demo_Primes.pl
demo/diskfree
+META.yml Module YAML meta-data (added by
MakeMaker)
+META.json Module JSON meta-data (added by
MakeMaker)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/Quantum-Superpositions-2.02/META.json
new/Quantum-Superpositions-2.03/META.json
--- old/Quantum-Superpositions-2.02/META.json 1970-01-01 01:00:00.000000000
+0100
+++ new/Quantum-Superpositions-2.03/META.json 2018-07-08 22:30:31.000000000
+0200
@@ -0,0 +1,44 @@
+{
+ "abstract" : "Superpositional logic in a single universe",
+ "author" : [
+ "unknown"
+ ],
+ "dynamic_config" : 1,
+ "generated_by" : "ExtUtils::MakeMaker version 7.24, CPAN::Meta::Converter
version 2.150010",
+ "license" : [
+ "unknown"
+ ],
+ "meta-spec" : {
+ "url" : "http://search.cpan.org/perldoc?CPAN::Meta::Spec",
+ "version" : "2"
+ },
+ "name" : "Quantum-Superpositions",
+ "no_index" : {
+ "directory" : [
+ "t",
+ "inc"
+ ]
+ },
+ "prereqs" : {
+ "build" : {
+ "requires" : {
+ "ExtUtils::MakeMaker" : "0"
+ }
+ },
+ "configure" : {
+ "requires" : {
+ "ExtUtils::MakeMaker" : "0"
+ }
+ },
+ "runtime" : {
+ "requires" : {
+ "Carp" : "0",
+ "Class::Multimethods" : "0",
+ "strict" : "0"
+ }
+ }
+ },
+ "release_status" : "stable",
+ "version" : "2.03",
+ "x_serialization_backend" : "JSON::PP version 2.27400_02"
+}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/Quantum-Superpositions-2.02/META.yml
new/Quantum-Superpositions-2.03/META.yml
--- old/Quantum-Superpositions-2.02/META.yml 1970-01-01 01:00:00.000000000
+0100
+++ new/Quantum-Superpositions-2.03/META.yml 2018-07-08 22:30:31.000000000
+0200
@@ -0,0 +1,25 @@
+---
+abstract: 'Superpositional logic in a single universe'
+author:
+ - unknown
+build_requires:
+ ExtUtils::MakeMaker: '0'
+configure_requires:
+ ExtUtils::MakeMaker: '0'
+dynamic_config: 1
+generated_by: 'ExtUtils::MakeMaker version 7.24, CPAN::Meta::Converter version
2.150010'
+license: unknown
+meta-spec:
+ url: http://module-build.sourceforge.net/META-spec-v1.4.html
+ version: '1.4'
+name: Quantum-Superpositions
+no_index:
+ directory:
+ - t
+ - inc
+requires:
+ Carp: '0'
+ Class::Multimethods: '0'
+ strict: '0'
+version: '2.03'
+x_serialization_backend: 'CPAN::Meta::YAML version 0.018'
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/Quantum-Superpositions-2.02/lib/Quantum/Superpositions.pm
new/Quantum-Superpositions-2.03/lib/Quantum/Superpositions.pm
--- old/Quantum-Superpositions-2.02/lib/Quantum/Superpositions.pm
2003-04-23 00:54:48.000000000 +0200
+++ new/Quantum-Superpositions-2.03/lib/Quantum/Superpositions.pm
2018-07-08 22:29:12.000000000 +0200
@@ -10,7 +10,7 @@
use Carp;
use Class::Multimethods;
-our $VERSION = '2.02';
+our $VERSION = '2.03';
sub import
{
@@ -898,7 +898,7 @@
meta-semantics for logical operations between superpositions; one that
preserves the
intuitive logic of comparisons but also gives
limited access to the states that cause those
-comparsions to succeed.
+comparisons to succeed.
The key is to deviate from the arithmetic view
of superpositional comparison (namely, that a
++++++ cpanspec.yml ++++++
---
#description_paragraphs: 3
#description: |-
# override description from CPAN
#summary: override summary from CPAN
#no_testing: broken upstream
#sources:
# - source1
# - source2
#patches:
# foo.patch: -p1
# bar.patch:
#preamble: |-
# BuildRequires: gcc-c++
#post_prep: |-
# hunspell=`pkg-config --libs hunspell | sed -e 's,-l,,; s, *,,g'`
# sed -i -e "s,hunspell-X,$hunspell," t/00-prereq.t Makefile.PL
#post_build: |-
# rm unused.files
#post_install: |-
# sed on %{name}.files
#license: SUSE-NonFree
#skip_noarch: 1
#custom_build: |-
#./Build build flags=%{?_smp_mflags} --myflag
#custom_test: |-
#startserver && make test
#ignore_requires: Bizarre::Module