storymap-cascade icon indicating copy to clipboard operation
storymap-cascade copied to clipboard

Update developer build instructions

Open regan-sarwas opened this issue 6 years ago • 10 comments

Building per the instructions in the readme (V1.8.3), left me with errors because the vimeo player was not installed. This appears to be listed in bower.json, but not package.json file. Installing bower and then running bower install seemed to do the trick.

Also npm install generated errors because the prebuilt binary for [email protected] was unavailable for darwin (mac osx). yarn install worked fine. This could be a transient error, but I'm left wondering what the correct build process is.

regan-sarwas avatar Jul 05 '18 20:07 regan-sarwas

Thanks for bringing this to our attention. I just updated the repo with the added vimeo-player code, so following the instructions should work now.

Can you provide more information on the npm install error for fsevents, perhaps a screenshot/output of the console error?

When running npm install, I get npm WARN notsup SKIPPING OPTIONAL DEPENDENCY: Unsupported platform for [email protected]: wanted {"os":"darwin","arch":"any"} (current: {"os":"win32","arch":"x64"}), but the setup completes as expected for me (I'm on Windows).

skitterm avatar Jul 05 '18 22:07 skitterm

Thanks for adding vimeo-player to the repo. That fixes the first problem. Feel free to close this issue.

Regarding the second part:

~/tmp[888]$git clone https://github.com/Esri/storymap-cascade.git
Cloning into 'storymap-cascade'...
remote: Counting objects: 4221, done.
remote: Compressing objects: 100% (249/249), done.
remote: Total 4221 (delta 34), reused 189 (delta 24), pack-reused 3874
Receiving objects: 100% (4221/4221), 15.66 MiB | 2.64 MiB/s, done.
Resolving deltas: 100% (1691/1691), done.
~/tmp[889]$cd storymap-cascade
~/tmp/storymap-cascade[890]$npm --version
6.1.0
~/tmp/storymap-cascade[891]$npm install

> [email protected] install /Users//tmp/storymap-cascade/node_modules/fsevents
> node install

node-pre-gyp ERR! Tried to download(404): https://fsevents-binaries.s3-us-west-2.amazonaws.com/v1.1.3/fse-v1.1.3-node-v64-darwin-x64.tar.gz 
node-pre-gyp ERR! Pre-built binaries not found for [email protected] and [email protected] (node-v64 ABI, unknown) (falling back to source compile with node-gyp) 
node-pre-gyp ERR! Tried to download(undefined): https://fsevents-binaries.s3-us-west-2.amazonaws.com/v1.1.3/fse-v1.1.3-node-v64-darwin-x64.tar.gz 
node-pre-gyp ERR! Pre-built binaries not found for [email protected] and [email protected] (node-v64 ABI, unknown) (falling back to source compile with node-gyp) 
  SOLINK_MODULE(target) Release/.node
  SOLINK_MODULE(target) Release/.node
  CXX(target) Release/obj.target/fse/fsevents.o
  CXX(target) Release/obj.target/fse/fsevents.o
In file included from In file included from ../fsevents.cc../fsevents.cc::66:

skipping a bunch of compiler errors where node tries and fails to build the module from source

node-pre-gyp ERR! cwd /Users/regan_sarwas/tmp/storymap-cascade/node_modules/fsevents
node-pre-gyp ERR! node -v v10.6.0
node-pre-gyp ERR! node-pre-gyp -v v0.6.39
node-pre-gyp ERR! not ok 
Failed to execute '/usr/local/Cellar/node/10.6.0/bin/node /usr/local/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js build --fallback-to-build --module=/Users/regan_sarwas/tmp/storymap-cascade/node_modules/fsevents/lib/binding/Release/node-v64-darwin-x64/fse.node --module_name=fse --module_path=/Users/regan_sarwas/tmp/storymap-cascade/node_modules/fsevents/lib/binding/Release/node-v64-darwin-x64' (1)
  COPY /Users/regan_sarwas/tmp/storymap-cascade/node_modules/fsevents/lib/binding/Release/node-v64-darwin-x64/fse.node
  TOUCH Release/obj.target/action_after_build.stamplifecycle [email protected]~postinstall: [email protected]
npm WARN optional SKIPPING OPTIONAL DEPENDENCY: [email protected] (node_modules/fsevents):
npm WARN optional SKIPPING OPTIONAL DEPENDENCY: [email protected] install: `node install`
npm WARN optional SKIPPING OPTIONAL DEPENDENCY: Exit status 1

added 740 packages from 409 contributors and audited 5006 packages in 44.218s
found 281 vulnerabilities (220 low, 54 moderate, 6 high, 1 critical)
  run `npm audit fix` to fix them, or `npm audit` for details

It says it is an optional dependency, so maybe we are ok. Nope. Running grunt gets part way before throwing this error:

Running "requirejs:builder" (requirejs) task
grunt[27411]: ../src/node_contextify.cc:631:static void node::contextify::ContextifyScript::New(const FunctionCallbackInfo<v8::Value> &): Assertion `args[1]->IsString()' failed.
 1: 0x100033aa9 node::Abort() [/usr/local/bin/node]
 2: 0x100032bd1 node::MakeCallback(v8::Isolate*, v8::Local<v8::Object>, char const*, int, v8::Local<v8::Value>*, node::async_context) [/usr/local/bin/node]
 3: 0x1000569b0 node::contextify::ContextifyScript::New(v8::FunctionCallbackInfo<v8::Value> const&) [/usr/local/bin/node]
 4: 0x1001e64be v8::internal::FunctionCallbackArguments::Call(v8::internal::CallHandlerInfo*) [/usr/local/bin/node]
 5: 0x1001e57b8 v8::internal::MaybeHandle<v8::internal::Object> v8::internal::(anonymous namespace)::HandleApiCallHelper<true>(v8::internal::Isolate*, v8::internal::Handle<v8::internal::HeapObject>, v8::internal::Handle<v8::internal::HeapObject>, v8::internal::Handle<v8::internal::FunctionTemplateInfo>, v8::internal::Handle<v8::internal::Object>, v8::internal::BuiltinArguments) [/usr/local/bin/node]
 6: 0x1001e51ea v8::internal::Builtin_Impl_HandleApiCall(v8::internal::BuiltinArguments, v8::internal::Isolate*) [/usr/local/bin/node]
 7: 0x24a76a841bd 
Abort trap: 6

However, yarn install then grunt gets me a successful build. My guess is that this module is available in the servers/caches that yarn is using, but not the ones npm is using. Hopefully it is a temporary problem, if not I've got a reasonable workaround.

regan-sarwas avatar Jul 05 '18 23:07 regan-sarwas

Thanks for the additional feedback. I'm looking into this, too.

~You're right that it seems bower install has been left out of the instructions after npm install. However, running both of those in succession isn't producing the errors for me that you're seeing. I do get this~ (Edit): bower install shouldn't be necessary since we're including all the libraries listed in bower.json in the folder src/lib/ (we just forgot to update that folder for this release). after running just npm install with Node 8.11.1, I get:

> [email protected] install /<path-to-cascade>/node_modules/fsevents
> node install

[fsevents] Success: "/<path-to-cascade>/node_modules/fsevents/lib/binding/Release/node-v57-darwin-x64/fse.node" already installed
Pass --update-binary to reinstall or --build-from-source to recompile
added 856 packages in 6.935s

but then everything seems to work.

I'm on a mac, node 8.11.1, npm 5.6.0, grunt 1.0.1, grunt-cli 1.2.0, bower 1.8.4. Could you provide those version numbers for your system and I'll see if I can repro? Thanks!

(Edit -- i see from above you're on node 10.6, npm 6.1, and I'm seeing the same errors with those versions)

asizer avatar Jul 06 '18 15:07 asizer

Glad you could reproduce the error. Interesting that it is ok with the older versions. Thanks for looking into this. Hopefully the maintainer of those modules can be of some assistance.

regan-sarwas avatar Jul 06 '18 17:07 regan-sarwas

we're also still looking at things from our end, testing if we can update the package that's causing this problem.

asizer avatar Jul 06 '18 18:07 asizer

ok, try deleting node_modules and then running npm install again.

asizer avatar Jul 06 '18 19:07 asizer

Now npm install works, but grunt still fails. However, yarn install then grunt works fine, so I'm not sure what is going on. See the details below working on a fresh clone of the repo.

~/tmp[906]$uname -a
Darwin Kernel Version 17.6.0: Tue May  8 15:22:16 PDT 2018; root:xnu-4570.61.1~1/RELEASE_X86_64 x86_64
~/tmp[907]$rm -rf storymap-cascade
~/tmp[908]$git clone https://github.com/Esri/storymap-cascade.git
Cloning into 'storymap-cascade'...
remote: Counting objects: 4224, done.
remote: Compressing objects: 100% (250/250), done.
remote: Total 4224 (delta 36), reused 192 (delta 26), pack-reused 3874
Receiving objects: 100% (4224/4224), 15.66 MiB | 2.52 MiB/s, done.
Resolving deltas: 100% (1693/1693), done.
~/tmp[909]$cd storymap-cascade
~/tmp/storymap-cascade[910]$npm --version
6.1.0
~/tmp/storymap-cascade[911]$node --version
v10.6.0
~/tmp/storymap-cascade[912]$npm install

> [email protected] install /Users/regan_sarwas/tmp/storymap-cascade/node_modules/fsevents
> node install

[fsevents] Success: "/Users/regan_sarwas/tmp/storymap-cascade/node_modules/fsevents/lib/binding/Release/node-v64-darwin-x64/fse.node" already installed
Pass --update-binary to reinstall or --build-from-source to recompile
added 808 packages from 433 contributors and audited 4834 packages in 32.327s
found 267 vulnerabilities (217 low, 45 moderate, 4 high, 1 critical)
  run `npm audit fix` to fix them, or `npm audit` for details
~/tmp/storymap-cascade[913]$grunt --version
grunt-cli v1.2.0
grunt v1.0.1
~/tmp/storymap-cascade[914]$grunt
(node:39449) ExperimentalWarning: The http2 module is an experimental API.
Running "jshint:nls-en" (jshint) task
>> 2 files lint free.

Running "jshint:nls-all" (jshint) task
>> 74 files lint free.

Running "eslint:target" (eslint) task

/Users/regan_sarwas/tmp/storymap-cascade/src/app/storymaps/tpl/print/media/Text.jsx
  39:21  warning  Dangerous property 'dangerouslySetInnerHTML' found  react/no-danger
  43:35  warning  Dangerous property 'dangerouslySetInnerHTML' found  react/no-danger

/Users/regan_sarwas/tmp/storymap-cascade/src/app/storymaps/tpl/print/PrintViewReact.jsx
  258:20  warning  Dangerous property 'dangerouslySetInnerHTML' found  react/no-danger

✖ 3 problems (0 errors, 3 warnings)


Running "clean:build" (clean) task
>> 0 paths cleaned.

Running "clean:deploy" (clean) task
>> 0 paths cleaned.

Running "clean:jsapioptim" (clean) task
>> 0 paths cleaned.

Running "clean:fonts" (clean) task
>> 0 paths cleaned.

Running "mkdir:all" (mkdir) task
Creating "deploy/app"...OK
Creating "build"...OK

Running "copy:fonts" (copy) task
Copied 40 files

Running "copy:fonts2" (copy) task
Copied 9 files

Running "copy:fonts3" (copy) task
Copied 6 files

Running "copy:youtube" (copy) task
Copied 1 file

Running "copy:calcite-vars" (copy) task
Copied 2 files

Running "copy:less-in-react" (copy) task
Copied 116 files

Running "copy:hbs-in-react" (copy) task
Copied 63 files

Running "babel:dev" (babel) task

Running "copy:commonResources4react" (copy) task
Created 102 directories, copied 267 files

Running "requirejs:builder" (requirejs) task
grunt[39449]: ../src/node_contextify.cc:631:static void node::contextify::ContextifyScript::New(const FunctionCallbackInfo<v8::Value> &): Assertion `args[1]->IsString()' failed.
 1: 0x100033aa9 node::Abort() [/usr/local/bin/node]
 2: 0x100032bd1 node::MakeCallback(v8::Isolate*, v8::Local<v8::Object>, char const*, int, v8::Local<v8::Value>*, node::async_context) [/usr/local/bin/node]
 3: 0x1000569b0 node::contextify::ContextifyScript::New(v8::FunctionCallbackInfo<v8::Value> const&) [/usr/local/bin/node]
 4: 0x1001e64be v8::internal::FunctionCallbackArguments::Call(v8::internal::CallHandlerInfo*) [/usr/local/bin/node]
 5: 0x1001e57b8 v8::internal::MaybeHandle<v8::internal::Object> v8::internal::(anonymous namespace)::HandleApiCallHelper<true>(v8::internal::Isolate*, v8::internal::Handle<v8::internal::HeapObject>, v8::internal::Handle<v8::internal::HeapObject>, v8::internal::Handle<v8::internal::FunctionTemplateInfo>, v8::internal::Handle<v8::internal::Object>, v8::internal::BuiltinArguments) [/usr/local/bin/node]
 6: 0x1001e51ea v8::internal::Builtin_Impl_HandleApiCall(v8::internal::BuiltinArguments, v8::internal::Isolate*) [/usr/local/bin/node]
 7: 0x3fa92c2841bd 
Abort trap: 6
~/tmp/storymap-cascade[915]$

As an alternative with yarn

~/tmp/storymap-cascade[915]$cd ..
~/tmp[916]$mkdir a
~/tmp[917]$cd a
~/tmp/a[918]$git clone https://github.com/Esri/storymap-cascade.git
Cloning into 'storymap-cascade'...
remote: Counting objects: 4224, done.
remote: Compressing objects: 100% (250/250), done.
remote: Total 4224 (delta 36), reused 192 (delta 26), pack-reused 3874
Receiving objects: 100% (4224/4224), 15.66 MiB | 1.45 MiB/s, done.
Resolving deltas: 100% (1693/1693), done.
~/tmp/a[919]$cd storymap-cascade/
~/tmp/a/storymap-cascade[920]$yarn install
yarn install v1.7.0
info No lockfile found.
[1/4] 🔍  Resolving packages...
⠁ (node:39477) [DEP0005] DeprecationWarning: Buffer() is deprecated due to security and usability issues. Please use the Buffer.alloc(), Buffer.allocUnsafe(), or Buffer.from() methods instead.
warning [email protected]: 🙌  Thanks for using Babel: we recommend using babel-preset-env now: please read babeljs.io/env to update! 
warning grunt-bower-task > rimraf > [email protected]: please upgrade to graceful-fs 4 for compatibility with current and future versions of Node.js
warning grunt-bower-task > [email protected]: wrench.js is deprecated! You should check out fs-extra (https://github.com/jprichardson/node-fs-extra) for any operations you were using wrench for. Thanks for all the usage over the years.
warning grunt-bower-task > [email protected]: We don't recommend using Bower for new projects. Please consider Yarn and Webpack or Parcel. You can read how to migrate legacy project here: https://bower.io/blog/2017/how-to-migrate-away-from-bower/
warning grunt-bower-task > bower > [email protected]: please upgrade to graceful-fs 4 for compatibility with current and future versions of Node.js
warning grunt-bower-task > bower > glob > [email protected]: please upgrade to graceful-fs 4 for compatibility with current and future versions of Node.js
warning grunt-bower-task > bower > glob > [email protected]: Please update to minimatch 3.0.2 or higher to avoid a RegExp DoS issue
warning grunt-bower-task > bower > bower-registry-client > [email protected]: please upgrade to graceful-fs 4 for compatibility with current and future versions of Node.js
warning grunt-bower-task > bower > bower-config > [email protected]: please upgrade to graceful-fs 4 for compatibility with current and future versions of Node.js
warning grunt-bower-task > bower > bower-json > [email protected]: please upgrade to graceful-fs 4 for compatibility with current and future versions of Node.js
warning grunt-bower-task > bower > decompress-zip > [email protected]: please upgrade to graceful-fs 4 for compatibility with current and future versions of Node.js
warning grunt-bower-task > bower > insight > configstore > [email protected]: please upgrade to graceful-fs 4 for compatibility with current and future versions of Node.js
warning grunt-bower-task > bower > insight > [email protected]: ReDoS vulnerability parsing Set-Cookie https://nodesecurity.io/advisories/130
warning grunt-bower-task > bower > request > [email protected]: Use uuid module instead
warning grunt-bower-task > bower > bower-registry-client > request > [email protected]: Use uuid module instead
warning grunt-bower-task > bower > update-notifier > latest-version > package-json > registry-url > [email protected]: this package has been reintegrated into npm and is now out of date with respect to npm
warning grunt-contrib-connect > [email protected]: Use the built-in module in node 9.0.0 or newer, instead
warning less > [email protected]: please upgrade to graceful-fs 4 for compatibility with current and future versions of Node.js
warning less > request > [email protected]: Use uuid module instead
[2/4] 🚚  Fetching packages...
[3/4] 🔗  Linking dependencies...
warning " > [email protected]" has incorrect peer dependency "grunt@~0.4.1".
[4/4] 📃  Building fresh packages...
success Saved lockfile.
✨  Done in 58.69s.
~/tmp/a/storymap-cascade[921]$grunt --version
grunt-cli v1.2.0
grunt v1.0.3
~/tmp/a/storymap-cascade[922]$grunt
(node:39482) ExperimentalWarning: The http2 module is an experimental API.
Running "jshint:nls-en" (jshint) task
>> 2 files lint free.

Running "jshint:nls-all" (jshint) task
>> 74 files lint free.

Running "eslint:target" (eslint) task

/Users/regan_sarwas/tmp/a/storymap-cascade/src/app/storymaps/tpl/print/media/Text.jsx
  39:21  warning  Dangerous property 'dangerouslySetInnerHTML' found  react/no-danger
  43:35  warning  Dangerous property 'dangerouslySetInnerHTML' found  react/no-danger

/Users/regan_sarwas/tmp/a/storymap-cascade/src/app/storymaps/tpl/print/PrintViewReact.jsx
  258:20  warning  Dangerous property 'dangerouslySetInnerHTML' found  react/no-danger

✖ 3 problems (0 errors, 3 warnings)


Running "clean:build" (clean) task
>> 0 paths cleaned.

Running "clean:deploy" (clean) task
>> 0 paths cleaned.

Running "clean:jsapioptim" (clean) task
>> 0 paths cleaned.

Running "clean:fonts" (clean) task
>> 0 paths cleaned.

Running "mkdir:all" (mkdir) task
Creating "deploy/app"...OK
Creating "build"...OK

Running "copy:fonts" (copy) task
Copied 40 files

Running "copy:fonts2" (copy) task
Copied 9 files

Running "copy:fonts3" (copy) task
Copied 6 files

Running "copy:youtube" (copy) task
Copied 1 file

Running "copy:calcite-vars" (copy) task
Copied 2 files

Running "copy:less-in-react" (copy) task
Copied 116 files

Running "copy:hbs-in-react" (copy) task
Copied 63 files

Running "babel:dev" (babel) task

Running "copy:commonResources4react" (copy) task
Created 102 directories, copied 267 files

Running "requirejs:builder" (requirejs) task
Writing CSS! file: storymaps/tpl/BuildConfigBuilder

Compressed CSS output to 92%.
Writing CSS! file: storymaps/tpl/BuildConfigBuilder

Compressed CSS output to 81%.

Running "requirejs:viewer" (requirejs) task
Writing CSS! file: storymaps/tpl/BuildConfigViewer

Compressed CSS output to 94%.
Writing CSS! file: storymaps/tpl/BuildConfigViewer

Compressed CSS output to 79%.

Running "requirejs:print" (requirejs) task
Writing CSS! file: storymaps/tpl/BuildConfigPrint

Compressed CSS output to 82%.
Writing CSS! file: storymaps/tpl/BuildConfigPrint

Compressed CSS output to 85%.

Running "regex-replace:js" (regex-replace) task

Running "regex-replace:css" (regex-replace) task

Running "concat:viewerJS" (concat) task

Running "concat:builderJS" (concat) task

Running "concat:printJS" (concat) task

Running "copy:html" (copy) task
Copied 1 file

Running "copy:main" (copy) task
Copied 3 files

Running "regex-replace:main" (regex-replace) task

Running "copy:config" (copy) task
Copied 1 file

Running "copy:resources" (copy) task
Created 103 directories, copied 267 files

Running "copy:libsResources" (copy) task
Copied 6 files

Running "copy:fonts4" (copy) task
Copied 51 files

Running "clean:fonts" (clean) task
>> 15 paths cleaned.

Running "copy:readme" (copy) task


Running "clean:jsapioptim" (clean) task
>> 3 paths cleaned.

Running "clean:build" (clean) task
>> 1 path cleaned.

Done.
~/tmp/a/storymap-cascade[923]$

regan-sarwas avatar Jul 10 '18 16:07 regan-sarwas

hey, sorry it's taken so long to get back to you on this. we were all out at our User Conference last week.

I'm seeing the same thing with npm install; grunt in node 10.6.0, npm 6.1.0, grunt 1.0.1, and grunt-cli 1.2.0.

we haven't seen this in our dev environments because we've been using node 8.x. switching to 10.6.0, i see the same thing there as well. it may take some time to track down what's happening in node 10.6 (and why yarn install seems to work). for now, i guess just stick with yarn install, and we'll update the repo when we've got this fixed.

asizer avatar Jul 17 '18 16:07 asizer

I ran into this same problem using node v12.1.0. yarn install && grunt was needed or else I got the same error above.

edsu avatar May 14 '19 16:05 edsu

Greetings has this issue been resolved? I continue to get the below error: D:\DEPLOYMENTS\storymap-cascade-master\storymap-cascade-master\src\app>npm install [ ......] | extract:ctype: sill extract [email protected] extracted to D:\DEPLOYMENTS\storymap-cascade-master\npm WARN optional SKIPPING OPTIONAL DEPENDENCY: [email protected] (node_modules\fsevents): npm WARN notsup SKIPPING OPTIONAL DEPENDENCY: Unsupported platform for [email protected]: wanted {"os":"darwin","arch":"any"} (current: {"os":"win32","arch":"x64"})

added 740 packages from 414 contributors and audited 4912 packages in 80.343s found 716 vulnerabilities (221 low, 54 moderate, 439 high, 2 critical) run npm audit fix to fix them, or npm audit for details

D:\DEPLOYMENTS\storymap-cascade-master\storymap-cascade-master\src\app>yarn install 'yarn' is not recognized as an internal or external command, operable program or batch file.

D:\DEPLOYMENTS\storymap-cascade-master\storymap-cascade-master\src\app>gurnt 'gurnt' is not recognized as an internal or external command, operable program or batch file.

D:\DEPLOYMENTS\storymap-cascade-master\storymap-cascade-master\src\app>grunt Running "jshint:nls-en" (jshint) task

2 files lint free.

Running "jshint:nls-all" (jshint) task

74 files lint free.

Running "eslint:target" (eslint) task

D:\DEPLOYMENTS\storymap-cascade-master\storymap-cascade-master\src\app\storymaps\tpl\print\media\Text.jsx 39:21 warning Dangerous property 'dangerouslySetInnerHTML' found react/no-danger 43:35 warning Dangerous property 'dangerouslySetInnerHTML' found react/no-danger

D:\DEPLOYMENTS\storymap-cascade-master\storymap-cascade-master\src\app\storymaps\tpl\print\PrintViewReact.jsx 258:20 warning Dangerous property 'dangerouslySetInnerHTML' found react/no-danger

✖ 3 problems (0 errors, 3 warnings)

Running "clean:build" (clean) task

1 path cleaned.

Running "clean:deploy" (clean) task

1 path cleaned.

Running "clean:jsapioptim" (clean) task

0 paths cleaned.

Running "clean:fonts" (clean) task

0 paths cleaned.

Running "mkdir:all" (mkdir) task Creating "deploy/app"...OK Creating "build"...OK

Running "copy:fonts" (copy) task Copied 40 files

Running "copy:fonts2" (copy) task Copied 9 files

Running "copy:fonts3" (copy) task Copied 6 files

Running "copy:youtube" (copy) task Copied 1 file

Running "copy:calcite-vars" (copy) task Copied 2 files

Running "copy:less-in-react" (copy) task Copied 116 files

Running "copy:hbs-in-react" (copy) task Copied 63 files

Running "babel:dev" (babel) task

Running "copy:commonResources4react" (copy) task Created 102 directories, copied 267 files

Running "requirejs:builder" (requirejs) task grunt[13672]: src\node_contextify.cc:628: Assertion `args[1]->IsString()' failed. 1: 00007FF7B341DC55 2: 00007FF7B33F75C6 3: 00007FF7B33F7691 4: 00007FF7B33CAC9A 5: 00007FF7B37DDD22 6: 00007FF7B37DEF38 7: 00007FF7B37DE26D 8: 00007FF7B37DE18B 9: 000003C241EDC6C1

trdsysmapping avatar Nov 14 '19 11:11 trdsysmapping