Libelektra: ์ตœ์†Œํ•œ์˜ ๋นŒ๋“œ๋กœ ์˜ค๋ฅ˜ ํ…Œ์ŠคํŠธ

์— ๋งŒ๋“  2017๋…„ 12์›” 14์ผ  ยท  4์ฝ”๋ฉ˜ํŠธ  ยท  ์ถœ์ฒ˜: ElektraInitiative/libelektra

๋ฌธ์ œ๋ฅผ ์žฌํ˜„ํ•˜๋Š” ๋‹จ๊ณ„

์ตœ์†Œํ•œ์˜ ํ”Œ๋Ÿฌ๊ทธ์ธ ์„ธํŠธ๋กœ ๋นŒ๋“œ๋ฅผ ๋งŒ๋“ญ๋‹ˆ๋‹ค. ๋ฌธ์„œ ์— ๋”ฐ๋ฅด๋ฉด ์ตœ์†Œํ•œ dump , resolver ๋ฐ sync ํ•ฉ๋‹ˆ๋‹ค.

๋‚ด ๋นŒ๋“œ๋Š” ์ •ํ™•ํžˆ ๋ฐ”์ธ๋”ฉ haskell;cpp , ํ”Œ๋Ÿฌ๊ทธ์ธ resolver_fm_hpu_b;dump;ini;haskell;sync;error ๋ฐ ๋„๊ตฌ kdb;gen ๋ฅผ ํฌํ•จํ•˜๊ธฐ ์œ„ํ•ด ํ•˜์Šค์ผˆ ์ข…์†์„ฑ ๋งŒ ํฌํ•จํ•˜๋„๋ก ์˜๋„๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ํ•˜์Šค์ผˆ ๊ด€๋ จ ํ•ญ๋ชฉ์„ ํฌํ•จํ•˜์ง€ ์•Š์œผ๋ฉด ๋™์ผํ•ฉ๋‹ˆ๋‹ค.

์˜ˆ์ƒ ๊ฒฐ๊ณผ

์ตœ์†Œํ•œ์˜ ๋นŒ๋“œ๋กœ ๋ชจ๋“  ํ…Œ์ŠคํŠธ๊ฐ€ ์„ฑ๊ณต์ ์œผ๋กœ ์‹คํ–‰๋  ๊ฒƒ์œผ๋กœ ๊ธฐ๋Œ€ํ•ฉ๋‹ˆ๋‹ค.

์‹ค์ œ ๊ฒฐ๊ณผ

์—ฌ๋Ÿฌ ํ…Œ์ŠคํŠธ๊ฐ€ ์‹คํŒจํ–ˆ์Šต๋‹ˆ๋‹ค (์ž์„ธํ•œ ๋‚ด์šฉ์€ ์ฒจ๋ถ€ ๋œ ํ…Œ์ŠคํŠธ ๋กœ๊ทธ ์ฐธ์กฐ). ๋งˆํฌ ๋‹ค์šด ํ…Œ์ŠคํŠธ ์‹คํŒจ ์ค‘ ์ผ๋ถ€๋Š” OSX์˜ ์ค„ ๋ฐ”๊ฟˆ ํ˜ผ๋™์œผ๋กœ ์ธํ•ด ๊ด€๋ จ๋œ ๊ฒƒ์œผ๋กœ ๋ณด์ž…๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌ๋‚˜ ํŠน์ • ํ”Œ๋Ÿฌ๊ทธ์ธ (์˜ˆ : ๋ชฉ๋ก ํ”Œ๋Ÿฌ๊ทธ์ธ ๋˜๋Š” ๊ธ€๋กœ๋ฒŒ ํ”Œ๋Ÿฌ๊ทธ์ธ ๋“ฑ)์— ์•”์‹œ ์ ์œผ๋กœ ์˜์กดํ•˜๋Š” ์ผ๋ถ€ ํ…Œ์ŠคํŠธ๋„ ์žˆ์Šต๋‹ˆ๋‹ค. ๋”ฐ๋ผ์„œ ์ตœ์†Œ ๋นŒ๋“œ์— ํ•„์š”ํ•œ ๊ฒƒ์œผ๋กœ ์ง€์ •ํ•˜๊ฑฐ๋‚˜ (์•„๋งˆ ๋” ๋‚˜์€ ์ ‘๊ทผ ๋ฐฉ์‹) ์ด๋Ÿฌํ•œ ๊ฒฝ์šฐ์— ๋Œ€ํ•œ ํ…Œ์ŠคํŠธ๋ฅผ ์ˆ˜์ •ํ•ด์•ผํ•ฉ๋‹ˆ๋‹ค.

The following tests FAILED:
         63 - testshell_hosts (Failed)
         64 - testshell_listtest (Failed)
         65 - testshell_profiletest (Failed)
         67 - testshell_replay_ls (Failed)
         68 - testshell_markdown_readme_msr (Failed)
         69 - testshell_markdown_issue_template (Failed)
         70 - testshell_markdown_tutorial_cascading (Failed)
         71 - testshell_markdown_kdb-complete (Failed)
        102 - testkdb_error (Failed)

์‹œ์Šคํ…œ ์ •๋ณด

  • Elektra ๋ฒ„์ „ : master
  • Apple LLVM ๋ฒ„์ „ 9.0.0 (clang-900.0.38)
  • cmake ๋ฒ„์ „ 3.10.0

๋‹ค๋ฅธ ๊ด€๋ จ์ด ์žˆ์Šต๋‹ˆ๊นŒ?

์ถ”๊ฐ€ ๋กœ๊ทธ ํŒŒ์ผ ๋ฐ ์ถœ๋ ฅ

๊ตฌ์„ฑ :

-- Clang detected
-- C flags are  -std=gnu99  -Wno-deprecated-declarations  -Wstrict-prototypes  -Wno-long-long -pedantic -Wno-variadic-macros -Wall -Wextra -Wno-overlength-strings -Wsign-compare -Wfloat-equal -Wformat -Wformat-security -Wshadow -Wcomments -Wtrigraphs -Wundef -Wuninitialized -Winit-self -Wsign-compare -Wfloat-equal
-- CXX flags are  -std=c++11  -Wno-deprecated-declarations  -Wold-style-cast -Wno-missing-field-initializers -Woverloaded-virtual  -Wsign-promo  -Wno-long-long -pedantic -Wno-variadic-macros -Wall -Wextra -Wno-overlength-strings -Wsign-compare -Wfloat-equal -Wformat -Wformat-security -Wshadow -Wcomments -Wtrigraphs -Wundef -Wuninitialized -Winit-self
-- You are building Elektra 0.8.20
-- Detected unix-x86_64. Use make package to build packages (PACKAGEMAKER;OSXX11).
-- Include Plugin dump
-- Include Plugin error
-- Include Plugin haskell
-- Include Plugin ini
-- Include Plugin resolver_fm_hpu_b
-- Include Plugin sync
-- Include Binding cpp
-- Include Binding haskell
-- Include Tool kdb
-- Include Tool gen
-- Configuring done
-- Generating done
-- Build files have been written to: /Users/admin/git/libelektra/build

ํ…Œ์ŠคํŠธ ๋กœ๊ทธ :

sudo ctest --output-on-failureTest project /Users/admin/git/libelektra/build
        Start   1: testtool_automergestrategy
  1/104 Test   #1: testtool_automergestrategy ..............   Passed    0.03 sec
        Start   2: testtool_backend
  2/104 Test   #2: testtool_backend ........................   Passed    0.03 sec
        Start   3: testtool_backendbuilder
  3/104 Test   #3: testtool_backendbuilder .................   Passed    0.04 sec
        Start   4: testtool_backendparser
  4/104 Test   #4: testtool_backendparser ..................   Passed    0.02 sec
        Start   5: testtool_comparison
  5/104 Test   #5: testtool_comparison .....................   Passed    0.01 sec
        Start   6: testtool_keyhelper
  6/104 Test   #6: testtool_keyhelper ......................   Passed    0.01 sec
        Start   7: testtool_mergecases
  7/104 Test   #7: testtool_mergecases .....................   Passed    0.02 sec
        Start   8: testtool_mergeresult
  8/104 Test   #8: testtool_mergeresult ....................   Passed    0.01 sec
        Start   9: testtool_mergingkdb
  9/104 Test   #9: testtool_mergingkdb .....................   Passed    0.40 sec
        Start  10: testtool_metamergestrategy
 10/104 Test  #10: testtool_metamergestrategy ..............   Passed    0.01 sec
        Start  11: testtool_newkeystrategy
 11/104 Test  #11: testtool_newkeystrategy .................   Passed    0.01 sec
        Start  12: testtool_onesidestrategy
 12/104 Test  #12: testtool_onesidestrategy ................   Passed    0.01 sec
        Start  13: testtool_plugindatabase
 13/104 Test  #13: testtool_plugindatabase .................   Passed    0.01 sec
        Start  14: testtool_pluginspec
 14/104 Test  #14: testtool_pluginspec .....................   Passed    0.01 sec
        Start  15: testtool_samemountpoint
 15/104 Test  #15: testtool_samemountpoint .................   Passed    0.02 sec
        Start  16: testtool_specreader
 16/104 Test  #16: testtool_specreader .....................   Passed    0.02 sec
        Start  17: testtool_umount
 17/104 Test  #17: testtool_umount .........................   Passed    0.01 sec
        Start  18: testcpp_contextual_basic
 18/104 Test  #18: testcpp_contextual_basic ................   Passed    0.06 sec
        Start  19: testcpp_contextual_nocontext
 19/104 Test  #19: testcpp_contextual_nocontext ............   Passed    0.01 sec
        Start  20: testcpp_contextual_policy
 20/104 Test  #20: testcpp_contextual_policy ...............   Passed    0.02 sec
        Start  21: testcpp_contextual_thread
 21/104 Test  #21: testcpp_contextual_thread ...............   Passed    0.18 sec
        Start  22: testcpp_contextual_update
 22/104 Test  #22: testcpp_contextual_update ...............   Passed    0.03 sec
        Start  23: testcpp_iter
 23/104 Test  #23: testcpp_iter ............................   Passed    0.01 sec
        Start  24: testcpp_iter_name
 24/104 Test  #24: testcpp_iter_name .......................   Passed    0.01 sec
        Start  25: testcpp_kdb
 25/104 Test  #25: testcpp_kdb .............................   Passed    0.02 sec
        Start  26: testcpp_key
 26/104 Test  #26: testcpp_key .............................   Passed    0.02 sec
        Start  27: testcpp_keyio
 27/104 Test  #27: testcpp_keyio ...........................   Passed    0.01 sec
        Start  28: testcpp_ks
 28/104 Test  #28: testcpp_ks ..............................   Passed    0.05 sec
        Start  29: testcpp_ksget
 29/104 Test  #29: testcpp_ksget ...........................   Passed    0.01 sec
        Start  30: testcpp_meta
 30/104 Test  #30: testcpp_meta ............................   Passed    0.01 sec
        Start  31: testhaskell_basic
 31/104 Test  #31: testhaskell_basic .......................   Passed    0.04 sec
        Start  32: testhaskell_basic_optimized
 32/104 Test  #32: testhaskell_basic_optimized .............   Passed    0.04 sec
        Start  33: testhaskell_realworld
 33/104 Test  #33: testhaskell_realworld ...................   Passed    0.04 sec
        Start  34: testhaskell_realworld_optimized
 34/104 Test  #34: testhaskell_realworld_optimized .........   Passed    0.04 sec
        Start  35: testmod_dump
 35/104 Test  #35: testmod_dump ............................   Passed    0.01 sec
        Start  36: testmod_haskell
 36/104 Test  #36: testmod_haskell .........................   Passed    0.05 sec
        Start  37: testmod_ini
 37/104 Test  #37: testmod_ini .............................   Passed    0.03 sec
        Start  38: testmod_resolver
 38/104 Test  #38: testmod_resolver ........................   Passed    0.01 sec
        Start  39: testscr_check_bashisms
 39/104 Test  #39: testscr_check_bashisms ..................   Passed    3.59 sec
        Start  40: testscr_check_basic
 40/104 Test  #40: testscr_check_basic .....................   Passed    0.22 sec
        Start  41: testscr_check_distribution
 41/104 Test  #41: testscr_check_distribution ..............   Passed    4.84 sec
        Start  42: testscr_check_doc
 42/104 Test  #42: testscr_check_doc .......................   Passed    0.24 sec
        Start  43: testscr_check_error
 43/104 Test  #43: testscr_check_error .....................   Passed    0.41 sec
        Start  44: testscr_check_export
 44/104 Test  #44: testscr_check_export ....................   Passed    0.22 sec
        Start  45: testscr_check_external
 45/104 Test  #45: testscr_check_external ..................   Passed    3.89 sec
        Start  46: testscr_check_formatting
 46/104 Test  #46: testscr_check_formatting ................   Passed    0.08 sec
        Start  47: testscr_check_gen
 47/104 Test  #47: testscr_check_gen .......................   Passed    0.11 sec
        Start  48: testscr_check_get_set
 48/104 Test  #48: testscr_check_get_set ...................   Passed    0.21 sec
        Start  49: testscr_check_import
 49/104 Test  #49: testscr_check_import ....................   Passed    0.20 sec
        Start  50: testscr_check_kdb_internal_check
 50/104 Test  #50: testscr_check_kdb_internal_check ........   Passed    0.19 sec
        Start  51: testscr_check_kdb_internal_suite
 51/104 Test  #51: testscr_check_kdb_internal_suite ........   Passed    0.17 sec
        Start  52: testscr_check_merge
 52/104 Test  #52: testscr_check_merge .....................   Passed    0.68 sec
        Start  53: testscr_check_meta
 53/104 Test  #53: testscr_check_meta ......................   Passed    1.95 sec
        Start  54: testscr_check_mount
 54/104 Test  #54: testscr_check_mount .....................   Passed    0.11 sec
        Start  55: testscr_check_oclint
 55/104 Test  #55: testscr_check_oclint ....................   Passed    0.04 sec
        Start  56: testscr_check_plugins
 56/104 Test  #56: testscr_check_plugins ...................   Passed    2.78 sec
        Start  57: testscr_check_race
 57/104 Test  #57: testscr_check_race ......................   Passed    0.08 sec
        Start  58: testscr_check_real_world
 58/104 Test  #58: testscr_check_real_world ................   Passed    0.24 sec
        Start  59: testscr_check_resolver
 59/104 Test  #59: testscr_check_resolver ..................   Passed    1.87 sec
        Start  60: testscr_check_spec
 60/104 Test  #60: testscr_check_spec ......................   Passed    0.31 sec
        Start  61: testscr_generate_data
 61/104 Test  #61: testscr_generate_data ...................   Passed    0.04 sec
        Start  62: testshell_db_changes
 62/104 Test  #62: testshell_db_changes ....................   Passed    0.72 sec
        Start  63: testshell_hosts
 63/104 Test  #63: testshell_hosts .........................***Failed    0.87 sec
kdb mount /tmp/hosts system/tmount/hosts hosts --with-recommends
Return value โ€œ7โ€ does not match โ€œ0โ€
kdb set system/tmount/hosts/ipv4/localhost 127.0.0.1
kdb ls system/tmount/hosts

ERROR - STDOUT:
โ€œsystem/tmount/hosts/ipv4/localhostโ€
does not match
โ€œsystem/tmount/hosts(โŽsystem/tmount/hosts/ipv[4,6]/localhost){1,2}โ€

kdb get system/tmount/hosts/ipv4/localhost
kdb set system/tmount/hosts/ipv4/localhost ::1
Return value โ€œ0โ€ does not match โ€œ5โ€
kdb umount system/tmount/hosts
shell_recorder /Users/admin/git/libelektra/tests/shell/shell_recorder/hosts.esr RESULTS: 22 test(s) done 3 error(s).
๐Ÿ“•  Protocol File: /var/folders/zz/zyxvpxvq6csfxvn_n0000000000000/T/elektraenv.XXXXXXXXX.RECXeTaV

        Start  64: testshell_listtest
 64/104 Test  #64: testshell_listtest ......................***Failed    0.88 sec
kdb export /sw/kdb/current/plugins dump > /tmp/elektra_sw_plugins.txt
kdb rm -r /sw/kdb/current/plugins
kdb set /sw/kdb/current/plugins
kdb mount /tmp/listtest.dump system/tmount/list dump list placements=,placements/set="presetstorage precommit postcommit",plugins=,plugins/#0=tracer,plugins/#0/placements=,plugins/#0/placements/set="presetstorage precommit postcommit",plugins/#1=timeofday,plugins/#1/placements=,plugins/#1/placements/set="presetstorage precommit postcommit"
kdb set system/tmount/list test

ERROR - STDERR:
โ€œโ€
does not match
โ€œ(set.*di.*pos.*){2}โ€


ERROR - STDOUT:
โ€œCreate a new key system/tmount/list with string "test"โ€
does not match
โ€œ(tracer.*){3}โ€

kdb ls system/tmount/list
kdb import /sw/kdb/current/plugins dump < /tmp/elektra_sw_plugins.txt
kdb umount system/tmount/list
shell_recorder /Users/admin/git/libelektra/tests/shell/shell_recorder/listtest.esr RESULTS: 19 test(s) done 2 error(s).
๐Ÿ“•  Protocol File: /var/folders/zz/zyxvpxvq6csfxvn_n0000000000000/T/elektraenv.XXXXXXXXX.NlXpMb4t

        Start  65: testshell_profiletest
 65/104 Test  #65: testshell_profiletest ...................***Failed    1.36 sec
kdb set system/elektra/globalplugins ""
kdb set system/elektra/globalplugins/postcommit list
kdb set system/elektra/globalplugins/postcommit/user list
kdb set system/elektra/globalplugins/postcommit/user/placements ""
kdb set system/elektra/globalplugins/postcommit/user/placements/set "presetstorage presetcleanup precommit postcommit"
kdb set system/elektra/globalplugins/postcommit/user/placements/get "pregetstorage postgetstorage postgetcleanup"
kdb set system/elektra/globalplugins/postcommit/user/placements/error "prerollback postrollback"
kdb set system/elektra/globalplugins/postcommit/user/plugins ""
kdb set system/elektra/globalplugins/postcommit/user/plugins/#0 profile
kdb set system/elektra/globalplugins/postcommit/user/plugins/#0/placements profile
kdb set system/elektra/globalplugins/postcommit/user/plugins/#0/placements/set "presetstorage presetcleanup"
kdb set system/elektra/globalplugins/postcommit/user/plugins/#0/placements/get "postgetstorage postgetcleanup"
kdb set system/elektra/globalplugins/postrollback list
kdb set system/elektra/globalplugins/precommit list
kdb set system/elektra/globalplugins/pregetstorage list
kdb set system/elektra/globalplugins/postgetcleanup list
kdb set system/elektra/globalplugins/postgetstorage list
kdb set system/elektra/globalplugins/presetstorage list
kdb set system/elektra/globalplugins/presetcleanup list
kdb set system/elektra/globalplugins/prerollback list
kdb set /sw/org/myapp/#0/current
kdb set /sw/org/myapp/#0/profile testprofile
kdb set /sw/org/myapp/#0/testprofile
kdb set /sw/org/myapp/#0/testprofile/testkey TEST
kdb get /sw/org/myapp/#0/current/testkey

ERROR - STDOUT:
โ€œโ€
does not match
โ€œTESTโ€

kdb rm -r system/elektra/globalplugins
kdb rm -r /sw/org/myapp/#0
shell_recorder /Users/admin/git/libelektra/tests/shell/shell_recorder/profiletest.esr RESULTS: 16 test(s) done 1 error(s).
๐Ÿ“•  Protocol File: /var/folders/zz/zyxvpxvq6csfxvn_n0000000000000/T/elektraenv.XXXXXXXXX.jTvsnK7c

        Start  66: testshell_script
 66/104 Test  #66: testshell_script ........................   Passed    1.01 sec
        Start  67: testshell_replay_ls
 67/104 Test  #67: testshell_replay_ls .....................***Failed    0.84 sec
kdb set user/test/ls
kdb set user/test/ls/level1 'one'
kdb ls user/test/ls
kdb set user/test/ls/level1/level2 'two'
kdb set user/test/ls/the 'roots'
kdb ls user/test/ls
kdb set user/test/ls/the/next/level
=======================================
Replay test failed, protocols differ
10a11,131
> STDERR:  Sorry, 15 warnings were issued ;(
>  Warning (#1):
>       Description: could not load module, dlopen failed
>       Ingroup: modules
>       Module: dl
>       At: ../src/libs/loader/dl.c:88
>       Reason: of module: libelektra-list.so, because: dlopen(libelektra-list.so, 130): image not found
>       Mountpoint: system/elektra
>       Configfile: kdbOpen(): mountGlobals
>  Warning (#64):
>       Description: could not load plugin in process plugin
>       Ingroup: modules
>       Module: kdb
>       At: ../src/libs/elektra/mount.c:297
>       Reason: list
>       Mountpoint: system/elektra
>       Configfile: kdbOpen(): mountGlobals
>  Warning (#1):
>       Description: could not load module, dlopen failed
>       Ingroup: modules
>       Module: dl
>       At: ../src/libs/loader/dl.c:88
>       Reason: of module: libelektra-list.so, because: dlopen(libelektra-list.so, 130): image not found
>       Mountpoint: system/elektra
>       Configfile: kdbOpen(): mountGlobals
>  Warning (#64):
>       Description: could not load plugin in process plugin
>       Ingroup: modules
>       Module: kdb
>       At: ../src/libs/elektra/mount.c:297
>       Reason: list
>       Mountpoint: system/elektra
>       Configfile: kdbOpen(): mountGlobals
>  Warning (#1):
>       Description: could not load module, dlopen failed
>       Ingroup: modules
>       Module: dl
>       At: ../src/libs/loader/dl.c:88
>       Reason: of module: libelektra-list.so, because: dlopen(libelektra-list.so, 130): image not found
>       Mountpoint: system/elektra
>       Configfile: kdbOpen(): mountGlobals
>  Warning (#64):
>       Description: could not load plugin in process plugin
>       Ingroup: modules
>       Module: kdb
>       At: ../src/libs/elektra/mount.c:297
>       Reason: list
>       Mountpoint: system/elektra
>       Configfile: kdbOpen(): mountGlobals
>  Warning (#1):
>       Description: could not load module, dlopen failed
>       Ingroup: modules
>       Module: dl
>       At: ../src/libs/loader/dl.c:88
>       Reason: of module: libelektra-list.so, because: dlopen(libelektra-list.so, 130): image not found
>       Mountpoint: system/elektra
>       Configfile: kdbOpen(): mountGlobals
>  Warning (#64):
>       Description: could not load plugin in process plugin
>       Ingroup: modules
>       Module: kdb
>       At: ../src/libs/elektra/mount.c:297
>       Reason: list
>       Mountpoint: system/elektra
>       Configfile: kdbOpen(): mountGlobals
>  Warning (#1):
>       Description: could not load module, dlopen failed
>       Ingroup: modules
>       Module: dl
>       At: ../src/libs/loader/dl.c:88
>       Reason: of module: libelektra-list.so, because: dlopen(libelektra-list.so, 130): image not found
>       Mountpoint: system/elektra
>       Configfile: kdbOpen(): mountGlobals
>  Warning (#64):
>       Description: could not load plugin in process plugin
>       Ingroup: modules
>       Module: kdb
>       At: ../src/libs/elektra/mount.c:297
>       Reason: list
>       Mountpoint: system/elektra
>       Configfile: kdbOpen(): mountGlobals
>  Warning (#1):
>       Description: could not load module, dlopen failed
>       Ingroup: modules
>       Module: dl
>       At: ../src/libs/loader/dl.c:88
>       Reason: of module: libelektra-list.so, because: dlopen(libelektra-list.so, 130): image not found
>       Mountpoint: system/elektra
>       Configfile: kdbOpen(): mountGlobals
>  Warning (#64):
>       Description: could not load plugin in process plugin
>       Ingroup: modules
>       Module: kdb
>       At: ../src/libs/elektra/mount.c:297
>       Reason: list
>       Mountpoint: system/elektra
>       Configfile: kdbOpen(): mountGlobals
>  Warning (#1):
>       Description: could not load module, dlopen failed
>       Ingroup: modules
>       Module: dl
>       At: ../src/libs/loader/dl.c:88
>       Reason: of module: libelektra-list.so, because: dlopen(libelektra-list.so, 130): image not found
>       Mountpoint: system/elektra
>       Configfile: kdbOpen(): mountGlobals
>  Warning (#64):
>       Description: could not load plugin in process plugin
>       Ingroup: modules
>       Module: kdb
>       At: ../src/libs/elektra/mount.c:297
>       Reason: list
>       Mountpoint: system/elektra
>       Configfile: kdbOpen(): mountGlobals
>  Warning (#139):
>       Description: failed to mount global plugins
>       Ingroup: kdb
>       Module: 
>       At: ../src/libs/elektra/kdb.c:309
>       Reason: Mounting global plugins failed
>       Mountpoint: system/elektra
>       Configfile: kdbOpen(): mountGlobals
12a134
> WARNINGS: 1,64,1,64,1,64,1,64,1,64,1,64,1,64,139
23a146,266
> STDERR:  Sorry, 15 warnings were issued ;(
>  Warning (#1):
>       Description: could not load module, dlopen failed
>       Ingroup: modules
>       Module: dl
>       At: ../src/libs/loader/dl.c:88
>       Reason: of module: libelektra-list.so, because: dlopen(libelektra-list.so, 130): image not found
>       Mountpoint: system/elektra
>       Configfile: kdbOpen(): mountGlobals
>  Warning (#64):
>       Description: could not load plugin in process plugin
>       Ingroup: modules
>       Module: kdb
>       At: ../src/libs/elektra/mount.c:297
>       Reason: list
>       Mountpoint: system/elektra
>       Configfile: kdbOpen(): mountGlobals
>  Warning (#1):
>       Description: could not load module, dlopen failed
>       Ingroup: modules
>       Module: dl
>       At: ../src/libs/loader/dl.c:88
>       Reason: of module: libelektra-list.so, because: dlopen(libelektra-list.so, 130): image not found
>       Mountpoint: system/elektra
>       Configfile: kdbOpen(): mountGlobals
>  Warning (#64):
>       Description: could not load plugin in process plugin
>       Ingroup: modules
>       Module: kdb
>       At: ../src/libs/elektra/mount.c:297
>       Reason: list
>       Mountpoint: system/elektra
>       Configfile: kdbOpen(): mountGlobals
>  Warning (#1):
>       Description: could not load module, dlopen failed
>       Ingroup: modules
>       Module: dl
>       At: ../src/libs/loader/dl.c:88
>       Reason: of module: libelektra-list.so, because: dlopen(libelektra-list.so, 130): image not found
>       Mountpoint: system/elektra
>       Configfile: kdbOpen(): mountGlobals
>  Warning (#64):
>       Description: could not load plugin in process plugin
>       Ingroup: modules
>       Module: kdb
>       At: ../src/libs/elektra/mount.c:297
>       Reason: list
>       Mountpoint: system/elektra
>       Configfile: kdbOpen(): mountGlobals
>  Warning (#1):
>       Description: could not load module, dlopen failed
>       Ingroup: modules
>       Module: dl
>       At: ../src/libs/loader/dl.c:88
>       Reason: of module: libelektra-list.so, because: dlopen(libelektra-list.so, 130): image not found
>       Mountpoint: system/elektra
>       Configfile: kdbOpen(): mountGlobals
>  Warning (#64):
>       Description: could not load plugin in process plugin
>       Ingroup: modules
>       Module: kdb
>       At: ../src/libs/elektra/mount.c:297
>       Reason: list
>       Mountpoint: system/elektra
>       Configfile: kdbOpen(): mountGlobals
>  Warning (#1):
>       Description: could not load module, dlopen failed
>       Ingroup: modules
>       Module: dl
>       At: ../src/libs/loader/dl.c:88
>       Reason: of module: libelektra-list.so, because: dlopen(libelektra-list.so, 130): image not found
>       Mountpoint: system/elektra
>       Configfile: kdbOpen(): mountGlobals
>  Warning (#64):
>       Description: could not load plugin in process plugin
>       Ingroup: modules
>       Module: kdb
>       At: ../src/libs/elektra/mount.c:297
>       Reason: list
>       Mountpoint: system/elektra
>       Configfile: kdbOpen(): mountGlobals
>  Warning (#1):
>       Description: could not load module, dlopen failed
>       Ingroup: modules
>       Module: dl
>       At: ../src/libs/loader/dl.c:88
>       Reason: of module: libelektra-list.so, because: dlopen(libelektra-list.so, 130): image not found
>       Mountpoint: system/elektra
>       Configfile: kdbOpen(): mountGlobals
>  Warning (#64):
>       Description: could not load plugin in process plugin
>       Ingroup: modules
>       Module: kdb
>       At: ../src/libs/elektra/mount.c:297
>       Reason: list
>       Mountpoint: system/elektra
>       Configfile: kdbOpen(): mountGlobals
>  Warning (#1):
>       Description: could not load module, dlopen failed
>       Ingroup: modules
>       Module: dl
>       At: ../src/libs/loader/dl.c:88
>       Reason: of module: libelektra-list.so, because: dlopen(libelektra-list.so, 130): image not found
>       Mountpoint: system/elektra
>       Configfile: kdbOpen(): mountGlobals
>  Warning (#64):
>       Description: could not load plugin in process plugin
>       Ingroup: modules
>       Module: kdb
>       At: ../src/libs/elektra/mount.c:297
>       Reason: list
>       Mountpoint: system/elektra
>       Configfile: kdbOpen(): mountGlobals
>  Warning (#139):
>       Description: failed to mount global plugins
>       Ingroup: kdb
>       Module: 
>       At: ../src/libs/elektra/kdb.c:309
>       Reason: Mounting global plugins failed
>       Mountpoint: system/elektra
>       Configfile: kdbOpen(): mountGlobals
27a271
> WARNINGS: 1,64,1,64,1,64,1,64,1,64,1,64,1,64,139




๐Ÿ“•  Protocol File: /var/folders/zz/zyxvpxvq6csfxvn_n0000000000000/T/elektraenv.XXXXXXXXX.sHE1zqKr

        Start  68: testshell_markdown_readme_msr
 68/104 Test  #68: testshell_markdown_readme_msr ...........***Failed    2.36 sec
kdb set /examples/markdown/napalm death

ERROR - STDOUT:
โ€œUsing name system/examples/markdown/napalm
Create a new key system/examples/markdown/napalm with string "death"โ€
does not match
โ€œUsing name user/examples/markdown/napalmโŽCreate a new key user/examples/markdown/napalm with string "death"โ€

kdb rm /examples/markdown/napalm
kdb rm /examples/markdown/babymetal
echo Babymetal Death |
  grep -o Death
cat > /tmp/hereout << EOF
line 1
line 2
EOF
cat /tmp/hereout
rm /tmp/hereout
shell_recorder /var/folders/zz/zyxvpxvq6csfxvn_n0000000000000/T/tmp.FWeDS8H3 RESULTS: 26 test(s) done 1 error(s).
๐Ÿ“•  Protocol File: /var/folders/zz/zyxvpxvq6csfxvn_n0000000000000/T/elektraenv.XXXXXXXXX.RsVAGXyE

        Start  69: testshell_markdown_issue_template
 69/104 Test  #69: testshell_markdown_issue_template .......***Failed    1.55 sec
kdb set /examples/hello world

ERROR - STDOUT:
โ€œUsing name system/examples/hello
Create a new key system/examples/hello with string "world"โ€
does not match
โ€œUsing name user/examples/helloโŽCreate a new key user/examples/hello with string "world"โ€

kdb get /examples/hello
kdb get user/does/not/exist
kdb rm /examples/hello
shell_recorder /var/folders/zz/zyxvpxvq6csfxvn_n0000000000000/T/tmp.6RJoCJSO RESULTS: 22 test(s) done 1 error(s).
๐Ÿ“•  Protocol File: /var/folders/zz/zyxvpxvq6csfxvn_n0000000000000/T/elektraenv.XXXXXXXXX.LFNEBF71

        Start  70: testshell_markdown_tutorial_cascading
 70/104 Test  #70: testshell_markdown_tutorial_cascading ...***Failed    4.80 sec
kdb get /sw/tutorial/cascading/#0/current/test
kdb set system/sw/tutorial/cascading/#0/current/test "hello world"
kdb get /sw/tutorial/cascading/#0/current/test
kdb set user/sw/tutorial/cascading/#0/current/test "hello galaxy"
kdb get /sw/tutorial/cascading/#0/current/test
mkdir kdbtutorial
cd kdbtutorial
kdb set dir/sw/tutorial/cascading/#0/current/test "hello universe"
kdb get /sw/tutorial/cascading/#0/current/test
cd ..
kdb get /sw/tutorial/cascading/#0/current/test
kdb set system/overrides/test "hello override"
kdb setmeta spec/sw/tutorial/cascading/#0/current/test override/#0 /overrides/test
kdb get /sw/tutorial/cascading/#0/current/test
kdb set /overrides/test "hello user"

ERROR - STDOUT:
โ€œUsing name system/overrides/test
Set string to "hello user"โ€
does not match
โ€œUsing name user/overrides/testโŽCreate a new key user/overrides/test with string "hello user"โ€

kdb get /sw/tutorial/cascading/#0/current/test
kdb rm -r user/sw/tutorial/
kdb rm -r system/sw/tutorial
kdb rm -r system/overrides/test
kdb rm /overrides/test
Return value โ€œ1โ€ does not match โ€œ0โ€
kdb rm -r spec/sw/tutorial/
if kdb info storage provides | grep -q 'storage/ini'; then kdb rm user/overrides; fi
rm -r .dir/
rmdir kdbtutorial
shell_recorder /var/folders/zz/zyxvpxvq6csfxvn_n0000000000000/T/tmp.sM3MAQvp RESULTS: 50 test(s) done 2 error(s).
๐Ÿ“•  Protocol File: /var/folders/zz/zyxvpxvq6csfxvn_n0000000000000/T/elektraenv.XXXXXXXXX.ej2KmEB6

        Start  71: testshell_markdown_kdb-complete
 71/104 Test  #71: testshell_markdown_kdb-complete .........***Failed    2.77 sec
kdb set /sw/elektra/examples/kdb-complete/level1 foo
kdb set /sw/elektra/examples/kdb-complete/lvl1/lvl2 bar
kdb set /sw/elektra/examples/kdb-complete/lvl1/lvl2/lvl3/lvl4/lvl5 fizz
kdb set /sw/elektra/examples/kdb-complete/buzz fizzBuzz
kdb set /sw/elektra/examples/kdb-complete/#array_1 asdf
kdb set /sw/elektra/examples/kdb-complete/% nothing
kdb complete us --max-depth=1
kdb complete user --max-depth=1
kdb complete user/ --max-depth=1
kdb complete --max-depth=1
kdb complete /sw/elektra/examples/kdb-complete --max-depth=1

ERROR - STDOUT:
โ€œsystem/sw/elektra/examples/kdb-complete/โ€
does not match
โ€œuser/sw/elektra/examples/kdb-complete/โ€

kdb complete /sw/elektra/examples/kdb-complete/ --max-depth=1

ERROR - STDOUT:
โ€œsystem/sw/elektra/examples/kdb-complete/%
system/sw/elektra/examples/kdb-complete/#array_1
system/sw/elektra/examples/kdb-complete/buzz
system/sw/elektra/examples/kdb-complete/level1
system/sw/elektra/examples/kdb-complete/lvl1/โ€
does not match
โ€œuser/sw/elektra/examples/kdb-complete/%โŽuser/sw/elektra/examples/kdb-complete/#array_1โŽuser/sw/elektra/examples/kdb-complete/buzzโŽuser/sw/elektra/examples/kdb-complete/level1โŽuser/sw/elektra/examples/kdb-complete/lvl1/โ€

kdb complete /sw/elektra/examples/kdb-complete/ --min-depth=2 --max-depth=4

ERROR - STDOUT:
โ€œsystem/sw/elektra/examples/kdb-complete/lvl1/lvl2/lvl3/
system/sw/elektra/examples/kdb-complete/lvl1/lvl2/lvl3/lvl4/โ€
does not match
โ€œuser/sw/elektra/examples/kdb-complete/lvl1/lvl2/lvl3/โŽuser/sw/elektra/examples/kdb-complete/lvl1/lvl2/lvl3/lvl4/โ€

kdb rm -r user/sw/elektra/examples/kdb-complete
Return value โ€œ1โ€ does not match โ€œ0โ€
shell_recorder /var/folders/zz/zyxvpxvq6csfxvn_n0000000000000/T/tmp.OP9cOjan RESULTS: 36 test(s) done 4 error(s).
๐Ÿ“•  Protocol File: /var/folders/zz/zyxvpxvq6csfxvn_n0000000000000/T/elektraenv.XXXXXXXXX.jd1abvnO

        Start  72: testshell_markdown_kdb-ls
 72/104 Test  #72: testshell_markdown_kdb-ls ...............   Passed    2.37 sec
        Start  73: testshell_markdown_ini
 73/104 Test  #73: testshell_markdown_ini ..................   Passed    6.32 sec
        Start  74: testabi_key
 74/104 Test  #74: testabi_key .............................   Passed    0.01 sec
        Start  75: testabi_ks
 75/104 Test  #75: testabi_ks ..............................   Passed    0.05 sec
        Start  76: testabi_meta
 76/104 Test  #76: testabi_meta ............................   Passed    0.01 sec
        Start  77: testabi_rel
 77/104 Test  #77: testabi_rel .............................   Passed    0.01 sec
        Start  78: test_args
 78/104 Test  #78: test_args ...............................   Passed    0.00 sec
        Start  79: test_array
 79/104 Test  #79: test_array ..............................   Passed    0.01 sec
        Start  80: test_backend
 80/104 Test  #80: test_backend ............................   Passed    0.01 sec
        Start  81: test_internal
 81/104 Test  #81: test_internal ...........................   Passed    0.01 sec
        Start  82: test_key
 82/104 Test  #82: test_key ................................   Passed    0.05 sec
        Start  83: test_keyname
 83/104 Test  #83: test_keyname ............................   Passed    0.00 sec
        Start  84: test_ks
 84/104 Test  #84: test_ks .................................   Passed    0.01 sec
        Start  85: test_meta
 85/104 Test  #85: test_meta ...............................   Passed    0.01 sec
        Start  86: test_mount
 86/104 Test  #86: test_mount ..............................   Passed    0.01 sec
        Start  87: test_mountsplit
 87/104 Test  #87: test_mountsplit .........................   Passed    0.01 sec
        Start  88: test_namespace
 88/104 Test  #88: test_namespace ..........................   Passed    0.01 sec
        Start  89: test_operation
 89/104 Test  #89: test_operation ..........................   Passed    0.01 sec
        Start  90: test_order
 90/104 Test  #90: test_order ..............................   Passed    0.01 sec
        Start  91: test_plugin
 91/104 Test  #91: test_plugin .............................   Passed    0.01 sec
        Start  92: test_proposal
 92/104 Test  #92: test_proposal ...........................   Passed    0.01 sec
        Start  93: test_size
 93/104 Test  #93: test_size ...............................   Passed    0.01 sec
        Start  94: test_spec
 94/104 Test  #94: test_spec ...............................   Passed    0.01 sec
        Start  95: test_split
 95/104 Test  #95: test_split ..............................   Passed    0.01 sec
        Start  96: test_splitget
 96/104 Test  #96: test_splitget ...........................   Passed    0.01 sec
        Start  97: test_splitset
 97/104 Test  #97: test_splitset ...........................   Passed    0.02 sec
        Start  98: test_trie
 98/104 Test  #98: test_trie ...............................   Passed    0.01 sec
        Start  99: test_utility
 99/104 Test  #99: test_utility ............................   Passed    0.01 sec
        Start 100: testkdb_allplugins
100/104 Test #100: testkdb_allplugins ......................   Passed    0.10 sec
        Start 101: testkdb_conflict
101/104 Test #101: testkdb_conflict ........................   Passed    0.52 sec
        Start 102: testkdb_error
102/104 Test #102: testkdb_error ...........................***Failed    0.26 sec
Running main() from gtest_main.cc
[==========] Running 5 tests from 1 test case.
[----------] Global test environment set-up.
[----------] 5 tests from Error
[ RUN      ] Error.Simple
[       OK ] Error.Simple (53 ms)
[ RUN      ] Error.Again
[       OK ] Error.Again (50 ms)
[ RUN      ] Error.CSimple
[       OK ] Error.CSimple (50 ms)
[ RUN      ] Error.ToWarning
../tests/kdb/testkdb_error.cpp:177: Failure
Value of: "110"
Expected: keyString (ckdb::keyGetMeta (parentKey, "warnings/#00/number"))
Which is: "1"
[  FAILED  ] Error.ToWarning (49 ms)
[ RUN      ] Error.Persists
[       OK ] Error.Persists (49 ms)
[----------] 5 tests from Error (251 ms total)

[----------] Global test environment tear-down
[==========] 5 tests from 1 test case ran. (251 ms total)
[  PASSED  ] 4 tests.
[  FAILED  ] 1 test, listed below:
[  FAILED  ] Error.ToWarning

 1 FAILED TEST

        Start 103: testkdb_nested
103/104 Test #103: testkdb_nested ..........................   Passed    0.66 sec
        Start 104: testkdb_simple
104/104 Test #104: testkdb_simple ..........................   Passed    1.08 sec

91% tests passed, 9 tests failed out of 104

Label Time Summary:
bindings    =   0.15 sec*proc (4 tests)
kdbtests    =  51.47 sec*proc (44 tests)
memleak     =  48.35 sec*proc (35 tests)

Total Test time (real) =  52.74 sec

The following tests FAILED:
         63 - testshell_hosts (Failed)
         64 - testshell_listtest (Failed)
         65 - testshell_profiletest (Failed)
         67 - testshell_replay_ls (Failed)
         68 - testshell_markdown_readme_msr (Failed)
         69 - testshell_markdown_issue_template (Failed)
         70 - testshell_markdown_tutorial_cascading (Failed)
         71 - testshell_markdown_kdb-complete (Failed)
        102 - testkdb_error (Failed)
Errors while running CTest

๋ชจ๋“  4 ๋Œ“๊ธ€

์‹ ๊ณ  ํ•ด์ฃผ์…”์„œ ๊ฐ์‚ฌํ•ฉ๋‹ˆ๋‹ค!

๋ชจ๋“  ์‹คํŒจํ•œ ํ…Œ์ŠคํŠธ ์ผ€์ด์Šค๊ฐ€ ์ตœ์†Œ ๋นŒ๋“œ๋กœ ์ธํ•ด ๋ฐœ์ƒํ•˜๋Š” ๊ฒƒ์€ ์•„๋‹™๋‹ˆ๋‹ค. "/Users/admin/.config/default.ecf"๊ฐ€ ์†์ƒ๋œ ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค. (์•„๋งˆ๋„ INI๋ฅผ ์‚ฌ์šฉํ•˜๋Š” Elektra๊ฐ€ ์„ค์น˜๋˜์–ด ๋คํ”„ ๋˜๋Š” ๋‹ค๋ฅธ ๋ฐฉ์‹์œผ๋กœ ์ปดํŒŒ์ผ๋˜์–ด์žˆ์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.)

"/Users/admin/.config/default.ecf"(์˜ˆ : ์ œ๊ฑฐ) ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜์—ฌ ๋นŒ๋“œ ๊ตฌ์„ฑ์œผ๋กœ ์ธํ•ด ์‹คํŒจํ•œ ํ…Œ์ŠคํŠธ ์‚ฌ๋ก€๋ฅผ๋ณด๋‹ค ๋ช…ํ™•ํ•˜๊ฒŒ ํŒŒ์•…ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๋ฌผ๋ก  ์ด์ฃ . ๋‹ค๋ฅธ ๋นŒ๋“œ ๊ตฌ์„ฑ์œผ๋กœ ๋งŽ์€ ๊ฒƒ์„ ์—‰๋ง์œผ๋กœ ๋งŒ๋“ค๊ณ  ๋‹ค์–‘ํ•œ ๋ถ„๊ธฐ๊ฐ„์— ์ „ํ™˜ ํ•  ๋•Œ ์‰ฝ๊ฒŒ ๋ฐœ์ƒํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ฒ˜์Œ์— default.ecf ์ œ๊ฑฐํ•œ ๊นจ๋—ํ•œ ์‹คํ–‰์œผ๋กœ ์ดˆ๊ธฐ ๊ฒŒ์‹œ๋ฌผ์„ ์—…๋ฐ์ดํŠธํ–ˆ์Šต๋‹ˆ๋‹ค.

์ด๊ฒƒ์„ ์ˆ˜๋™์œผ๋กœ ์ˆ˜์ •ํ•˜๋Š” ๊ฒƒ์€ ์ƒ๋‹นํ•œ ๋…ธ๋ ฅ์ด ๋  ๊ฒƒ์ž…๋‹ˆ๋‹ค. ์ตœ์„ ์˜ ๋ฐฉ๋ฒ•์€ # 944์—์„œ ์–ธ๊ธ‰ ํ•œ ๊ฒƒ์ฒ˜๋Ÿผ shellrecorder์˜ "ํ”Œ๋Ÿฌ๊ทธ์ธ ์ข…์†์„ฑ ๊ธฐ๋Šฅ"์„ ๊ตฌํ˜„ํ•˜๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค. ์ด๋Ÿฐ ์‹์œผ๋กœ ์‰˜ ๋ ˆ์ฝ”๋”๋Š” ์ผ๋ถ€ ํ•„์ˆ˜ ํ”Œ๋Ÿฌ๊ทธ์ธ์ด ์กด์žฌํ•˜์ง€ ์•Š์Œ์„ ์ž๋™์œผ๋กœ ๊ฐ์ง€ํ•˜๊ณ  ์‹คํŒจํ•˜์ง€ ์•Š๊ณ  ์Šค์Šค๋กœ ๋น„ํ™œ์„ฑํ™”ํ•ฉ๋‹ˆ๋‹ค.

๊ธฐ๋ก์„ ์œ„ํ•ด travis์—์„œ haskell ๋นŒ๋“œ์— ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ๊ณผ ๊ฐ™์€ ์ž‘๋™ํ•˜๋Š” ์ตœ์†Œ ๊ตฌ์„ฑ์€ ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค.

-DBINDINGS="" -DPLUGINS="resolver_fm_hpu_b;dump;ini;dini;sync;error;hosts;list;glob;profile;spec;network;tracer;timeofday;base64; " -DTOOLS="kdb"

๋”ฐ๋ผ์„œ ์ง€๊ธˆ ๋‹ซ์œผ๋ฉด ์—ฌ๊ธฐ์—์žˆ๋Š” ๋‹ค๋ฅธ ๋นŒ๋“œ ์˜ค๋ฅ˜๊ฐ€ # 1773๊ณผ ๊ด€๋ จ์ด ์žˆ์Šต๋‹ˆ๋‹ค.

์ด ํŽ˜์ด์ง€๊ฐ€ ๋„์›€์ด ๋˜์—ˆ๋‚˜์š”?
0 / 5 - 0 ๋“ฑ๊ธ‰