Coder Social home page Coder Social logo

Comments (10)

jhthorsen avatar jhthorsen commented on September 28, 2024

How do you build it? Are you using cpanm? Can you give me the exact command you're running?

from json-validator.

bcornec avatar bcornec commented on September 28, 2024

I'm building using package dependencies (not CPAN), so I may miss some of them (I used Makefile.PL to get required deps). And the command used is:

$ /usr/bin/perl Makefile.PL INSTALLDIRS=vendor
Warning: prerequisite Test::More 1.30 not found. We have 1.001014.
Checking if your kit is complete...
Looks good
Generating a Unix-style Makefile
Writing Makefile for JSON::Validator
Writing MYMETA.yml and MYMETA.json
$ make -O -j12

[works]

$ make test

failing as described above.

from json-validator.

bcornec avatar bcornec commented on September 28, 2024

Could the check for Test::More giving a warning be the problem ?

$ perl -V
Summary of my perl5 (revision 5 version 22 subversion 3) configuration:
   
  Platform:
    osname=linux, osvers=4.4.65-server-1.mga5, archname=x86_64-linux-thread-multi
    uname='linux ecosse.mageia.org 4.4.65-server-1.mga5 #1 smp fri apr 28 14:48:17 utc 2017 x86_64 x86_64 x86_64 gnulinux '
    config_args='-des -Dinc_version_list=5.22.3 5.22.3/x86_64-linux-thread-multi 5.22.2 5.22.2/x86_64-linux-thread-multi 5.22.1 5.22.1/x86_64-linux-thread-multi 5.22.0 5.22.0/x86_64-linux-thread-multi 5.20.1 5.20.0 5.18.2 5.18.1 5.18.0 5.16.3 5.16.3 5.16.2 5.16.2 5.16.1 5.16.1 5.16.0 5.16.0 -Darchname=x86_64-linux -Dcc=gcc -Doptimize=-O2 -g -pipe -Wformat -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -fstack-protector --param=ssp-buffer-size=4 -Wl,--as-needed  -Wl,-z,relro -Wl,-O1 -Wl,--build-id -Wl,--enable-new-dtags -pthread -DDEBUGGING=-g -Dprefix=/usr -Dvendorprefix=/usr -Dsiteprefix=/usr -Dsitebin=/usr/local/bin -Dsiteman1dir=/usr/local/share/man/man1 -Dsiteman3dir=/usr/local/share/man/man3 -Dman3dir=/usr/share/man/man3pm -Dvendorman3dir=/usr/share/man/man3 -Dman3ext=3pm -Dcf_by=Mageia -Dmyhostname=localhost -Dperladmin=root@localhost -Dcf_email=root@localhost -Dperllibs=-lnsl -ldl -lm -lcrypt -lutil -lc -pthread -Ud_csh -Duseshrplib -Duseithreads -Di_db -Di_ndbm -Di_gdbm'
    hint=recommended, useposix=true, d_sigaction=define
    useithreads=define, usemultiplicity=define
    use64bitint=define, use64bitall=define, uselongdouble=undef
    usemymalloc=n, bincompat5005=undef
  Compiler:
    cc='gcc', ccflags ='-D_REENTRANT -D_GNU_SOURCE -fwrapv -fno-strict-aliasing -pipe -fstack-protector-strong -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64',
    optimize='-O2 -g -pipe -Wformat -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -fstack-protector --param=ssp-buffer-size=4 -Wl,--as-needed -Wl,-z,relro -Wl,-O1 -Wl,--build-id -Wl,--enable-new-dtags -pthread',
    cppflags='-D_REENTRANT -D_GNU_SOURCE -fwrapv -fno-strict-aliasing -pipe -fstack-protector-strong -I/usr/local/include'
    ccversion='', gccversion='5.4.0', gccosandvers=''
    intsize=4, longsize=8, ptrsize=8, doublesize=8, byteorder=12345678, doublekind=3
    d_longlong=define, longlongsize=8, d_longdbl=define, longdblsize=16, longdblkind=3
    ivtype='long', ivsize=8, nvtype='double', nvsize=8, Off_t='off_t', lseeksize=8
    alignbytes=8, prototype=define
  Linker and Libraries:
    ld='gcc', ldflags =' -fstack-protector-strong -L/usr/local/lib64'
    libpth=/usr/local/lib /usr/lib /usr/local/lib64 /lib/../lib64 /usr/lib/../lib64 /lib /lib64 /usr/lib64
    libs=-lpthread -lnsl -lgdbm -ldb -ldl -lm -lcrypt -lutil -lc -lgdbm_compat
    perllibs=-lpthread -lnsl -ldl -lm -lcrypt -lutil -lc
    libc=libc-2.22.so, so=so, useshrplib=true, libperl=libperl.so
    gnulibc_version='2.22'
  Dynamic Linking:
    dlsrc=dl_dlopen.xs, dlext=so, d_dlsymun=undef, ccdlflags='-Wl,-E'
    cccdlflags='-fPIC', lddlflags='-shared -O2 -g -pipe -Wformat -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -fstack-protector --param=ssp-buffer-size=4 -Wl,--as-needed -Wl,-z,relro -Wl,-O1 -Wl,--build-id -Wl,--enable-new-dtags -pthread -L/usr/local/lib64 -fstack-protector-strong'


Characteristics of this binary (from libperl): 
  Compile-time options: HAS_TIMES MULTIPLICITY PERLIO_LAYERS
                        PERL_DONT_CREATE_GVSV
                        PERL_HASH_FUNC_ONE_AT_A_TIME_HARD
                        PERL_IMPLICIT_CONTEXT PERL_MALLOC_WRAP
                        PERL_NEW_COPY_ON_WRITE PERL_PRESERVE_IVUV
                        USE_64_BIT_ALL USE_64_BIT_INT USE_ITHREADS
                        USE_LARGE_FILES USE_LOCALE USE_LOCALE_COLLATE
                        USE_LOCALE_CTYPE USE_LOCALE_NUMERIC USE_LOCALE_TIME
                        USE_PERLIO USE_PERL_ATOF USE_REENTRANT_API
  Locally applied patches:
        Mageia patches
  Built under linux
  Compiled at Jun  6 2017 18:40:23
  @INC:
    /usr/lib/perl5/site_perl/5.22.3/x86_64-linux-thread-multi
    /usr/lib/perl5/site_perl/5.22.3
    /usr/lib/perl5/vendor_perl/5.22.3/x86_64-linux-thread-multi
    /usr/lib/perl5/vendor_perl/5.22.3
    /usr/lib/perl5/5.22.3/x86_64-linux-thread-multi
    /usr/lib/perl5/5.22.3
    /usr/lib/perl5/site_perl/5.22.3
    /usr/lib/perl5/site_perl/5.22.3/x86_64-linux-thread-multi
    /usr/lib/perl5/site_perl/5.20.1
    /usr/lib/perl5/site_perl/5.18.1
    /usr/lib/perl5/site_perl/5.16.3
    /usr/lib/perl5/site_perl/5.16.3
    /usr/lib/perl5/site_perl
    /usr/lib/perl5/vendor_perl/5.22.3
    /usr/lib/perl5/vendor_perl/5.22.3/x86_64-linux-thread-multi
    /usr/lib/perl5/vendor_perl/5.22.2
    /usr/lib/perl5/vendor_perl/5.22.2/x86_64-linux-thread-multi
    /usr/lib/perl5/vendor_perl/5.22.1
    /usr/lib/perl5/vendor_perl/5.22.0
    /usr/lib/perl5/vendor_perl/5.20.1
    /usr/lib/perl5/vendor_perl/5.20.0
    /usr/lib/perl5/vendor_perl/5.18.2
    /usr/lib/perl5/vendor_perl/5.18.1
    /usr/lib/perl5/vendor_perl/5.16.3
    /usr/lib/perl5/vendor_perl/5.16.3
    /usr/lib/perl5/vendor_perl/5.16.2
    /usr/lib/perl5/vendor_perl/5.16.2
    /usr/lib/perl5/vendor_perl/5.16.0
    /usr/lib/perl5/vendor_perl/5.16.0
    /usr/lib/perl5/vendor_perl
    .

from json-validator.

jhthorsen avatar jhthorsen commented on September 28, 2024

I was certain I had release 1.03. Sorry about the delay!

This is fixed in 0fc9d68 and ab29fec.

from json-validator.

bcornec avatar bcornec commented on September 28, 2024

Same errors with 1.03:

+ cd /users-ssd/bruno/prj/mageia/perl-JSON-Validator/BUILD
+ cd JSON-Validator-1.03
+ '[' 1 -eq 1 ']'
+ make test
PERL_DL_NONLAZY=1 "/usr/bin/perl5.22.3" "-MExtUtils::Command::MM" "-MTest::Harness" "-e" "undef *Test::Harness::Switches; test_harness(0, 'blib/lib', 'blib/arch')" t/*.t
t/00-basic.t ........................... ok
t/acceptance.t ......................... ok
t/booleans-xs.t ........................ skipped: Cpanel::JSON::XS and Mojo::JSON::MaybeXS is required.
t/booleans.t ........................... ok
t/coerce-args.t ........................ ok
t/deep-mixed-ref.t ..................... ok
t/invalid-ref.t ........................ ok
t/issue-22-duplicate-error-messages.t .. ok
t/issue-27-yaml-syck-false.t ........... ok
t/issue-42-cache-control.t ............. skipped: TEST_ONLINE=1
t/issue-71-additionalproperties.t ...... ok
t/jv-allof.t ........................... ok
t/jv-anyof.t ........................... ok
t/jv-array.t ........................... ok
t/jv-basic.t ........................... ok
t/jv-boolean.t ......................... ok
t/jv-const.t ........................... ok
t/jv-enum.t ............................ ok
Format rule for 'unknown' is missing at /users-ssd/bruno/prj/mageia/perl-JSON-Validator/BUILD/JSON-Validator-1.03/blib/lib/JSON/Validator.pm line 475.
t/jv-formats.t ......................... ok
t/jv-integer.t ......................... ok
t/jv-not.t ............................. ok
t/jv-number.t .......................... ok

#   Failed test 'errors: /credit_card: Missing billing_address.'
#   at t/Helper.pm line 16.
#     Structures begin differing at:
#          $got->[0] = Does not exist
#     $expected->[0] = HASH(0x1d926c0)
# []
# Looks like you failed 1 test of 19.
t/jv-object.t .......................... 
Dubious, test returned 1 (wstat 256, 0x100)
Failed 1/19 subtests 
t/jv-oneof.t ........................... ok
t/jv-required.t ........................ ok
t/jv-string.t .......................... ok
t/load-and-validate-spec.t ............. ok
t/load-data.t .......................... ok
t/load-http.t .......................... skipped: TEST_ONLINE=1
t/load-json.t .......................... ok
t/load-same-file-only-once.t ........... ok
t/load-yaml.t .......................... ok
t/openapi-compatibility.t .............. ok

#   Failed test 'errors: /v: Does not match float format.'
#   at t/Helper.pm line 16.
#     Structures begin differing at:
#          $got->[0] = Does not exist
#     $expected->[0] = HASH(0x2f29350)
# []
Format rule for 'unknown' is missing at /users-ssd/bruno/prj/mageia/perl-JSON-Validator/BUILD/JSON-Validator-1.03/blib/lib/JSON/Validator.pm line 475.
# Looks like you failed 1 test of 24.
t/openapi-formats.t .................... 
Dubious, test returned 1 (wstat 256, 0x100)
Failed 1/24 subtests 
t/openapi-request.t .................... ok
t/openapi-response.t ................... ok
# /huntingSkill: Missing property.
t/openapi.t ............................ ok
t/petstore.t ........................... ok
t/recursion.t .......................... ok
t/relative-ref.t ....................... ok
t/resolve.t ............................ ok
t/schema-as-attr.t ..................... ok
t/to-json.t ............................ ok
t/validate-id.t ........................ ok
t/validate-json.t ...................... ok
t/validate-recursive.t ................. ok
t/validate-schema.t .................... ok

Test Summary Report
-------------------
t/acceptance.t                       (Wstat: 0 Tests: 265 Failed: 0)
  TODO passed:   45-47, 49-52, 56-57
t/jv-object.t                        (Wstat: 256 Tests: 19 Failed: 1)
  Failed test:  18
  Non-zero exit status: 1
t/openapi-formats.t                  (Wstat: 256 Tests: 24 Failed: 1)
  Failed test:  12
  Non-zero exit status: 1
t/openapi-response.t                 (Wstat: 0 Tests: 7 Failed: 0)
  TODO passed:   1
t/openapi.t                          (Wstat: 0 Tests: 8 Failed: 0)
  TODO passed:   1
Files=47, Tests=584, 16 wallclock secs ( 0.20 usr  0.01 sys + 15.48 cusr  0.58 csys = 16.27 CPU)
Result: FAIL
Failed 2/47 test programs. 2/584 subtests failed.
Makefile:878: recipe for target 'test_dynamic' failed
make: *** [test_dynamic] Error 255

from json-validator.

jhthorsen avatar jhthorsen commented on September 28, 2024

It looks like your version of Test::More does not care about things like local $TODO = 'Add support for dependencies';. Not sure why it doesn't.

I'm also unsure why Test::More >= 1.30 is not required.

https://github.com/jhthorsen/json-validator/blob/master/Makefile.PL#L17

from json-validator.

bcornec avatar bcornec commented on September 28, 2024

Thanks for taking time to look at this !

Test::More < 1.30 seems to give just a Warning, as mentioned upper, but doesn't abort the install :-( But somehow, it's nice as it allows me to pass nearly all tests, and to have a working version anyway on my platform.

This version of the module is the one coming with the perl version provided with the Mageia distribution 6 (perl 5.22.3). It's not a separate module I can upgrade easily in that case :-(

It seems that the next version (cauldron, future Mageia 7) comes with perl 5.26.1 which contains
which is 1.302073 so that requirement should be ok then. I'll try to build for that devel version to see whether it works better.

from json-validator.

jhthorsen avatar jhthorsen commented on September 28, 2024

You could just install it without running the tests.

perl Makefile.PL
make install

or

cpanm -n JSON::Validator

or

curl -L https://cpanmin.us | perl - -n https://github.com/jhthorsen/json-validator/archive/master.tar.gz

from json-validator.

bcornec avatar bcornec commented on September 28, 2024

Sorry if I wasn't clear. The software installs without issue and seems to work fine (now that you helped me fix my api.xml file) as it validates my initial example, so I'm fine with that.

It's just that generally our Linux distribution activates the make test part in the .spec file to build the RPM and here it is causing an issue I wanted to report to you so you may advise me whether I miss something or whether it's something you can reproduce upstream, which doesn't seem to be the case :-(

So:

perl Makefile.PL
make install

works as well as the module.

make test

doesn't in my case.

from json-validator.

jhthorsen avatar jhthorsen commented on September 28, 2024

I'm not going to fix that. But I welcome a pull request.

Sorry.

from json-validator.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.