Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Windows compatibility #1463

Merged
merged 2 commits into from
Aug 5, 2019
Merged

Conversation

bholloway
Copy link
Contributor

Finalise

Updates have been merged to preconstruct per PR #77. This PR makes the same changes here.

Root cause

Tested myself on MacOs and by @MadeByMike on windows 10.

@changeset-bot
Copy link

changeset-bot bot commented Aug 5, 2019

🦋 Changeset is good to go

Latest commit: a1cd2ca

We got this.

Not sure what this means? Click here to learn what changesets are.

@bholloway
Copy link
Contributor Author

@MadeByMike you might want to recheck this on Windows at some point (after merge). Now that everything is finalised.

@emmatown emmatown merged commit 37b52b7 into keystonejs:master Aug 5, 2019
@1337cookie
Copy link
Contributor

Related?

C:\Users\user\Documents\web\keystone-5>bolt
⚡️   bolt v0.23.6 (node v10.16.1)
�   [1/4] Validating project...
�   [2/4] Installing project dependencies...
$ C:\Users\user\AppData\Local\Yarn\Data\global\node_modules\bolt\node_modules\.bin\yarn config get user-agent yarn/1.17.3 npm/? node/v10.16.1 win32 x64
yarn install v1.17.3
[1/4] Resolving packages...
[2/4] Fetching packages...
info [email protected]: The platform "win32" is incompatible with this module.
info "[email protected]" is an optional dependency and failed compatibility check. Excluding it from installation.
info [email protected]: The platform "win32" is incompatible with this module.
info "[email protected]" is an optional dependency and failed compatibility check. Excluding it from installation.
[3/4] Linking dependencies...
warning "apollo-server-express > apollo-server-core > [email protected]" has incorrect peer dependency "[email protected] - 14.1.x".
warning "graphql-playground-react > [email protected]" has incorrect peer dependency "react@>=15.5 <16".
warning "graphql-playground-react > [email protected]" has incorrect peer dependency "react-dom@>=15.5 <16".
[4/4] Building fresh packages...
$ yarn build:build-field-types && preconstruct dev && node ./packages/build-field-types/bin.js dev  && yarn run --silent contributing-guide
yarn run v1.17.3
$ rimraf packages/build-field-types/lib && babel packages/build-field-types/src --out-dir packages/build-field-types/dist --ignore '**/__tests__/**/*','**/__mocks__/**/*'
Successfully compiled 42 files with Babel.
Done in 4.41s.
� info project is valid!
� error { [Error: EPERM: operation not permitted, symlink 'C:\Users\user\Documents\web\keystone-5\packages\arch\packages\alert\src\index.js' -> 'C:\Users\user\Documents\web\keystone-5\packages\arch\packages\alert\dist\alert.cjs.js.flow']
� error   errno: -4048,
� error   code: 'EPERM',
� error   syscall: 'symlink',
� error   path:
� error    'C:\\Users\\user\\Documents\\web\\keystone-5\\packages\\arch\\packages\\alert\\src\\index.js',
� error   dest:
� error    'C:\\Users\\user\\Documents\\web\\keystone-5\\packages\\arch\\packages\\alert\\dist\\alert.cjs.js.flow' }
error Command failed with exit code 1.
info Visit https://yarnpkg.com/en/docs/cli/install for documentation about this command.
error Error: spawn C:/Users/user/AppData/Local/Yarn/Data/global/node_modules/bolt/node_modules/.bin/yarn ENOENT
error     at notFoundError (C:/Users/user/AppData/Local/Yarn/Data/global/node_modules/cross-spawn/lib/enoent.js:11:11)
error     at verifyENOENT (C:/Users/user/AppData/Local/Yarn/Data/global/node_modules/cross-spawn/lib/enoent.js:46:16)
error     at ChildProcess.cp.emit (C:/Users/user/AppData/Local/Yarn/Data/global/node_modules/cross-spawn/lib/enoent.js:33:19)

@bholloway
Copy link
Contributor Author

In testing we saw that admin was required to get the symlink to work.

Definitely you should not be running as admin.

I believe there’s a setting somewhere such that the symlink doesn’t need admin privileges. I don’t have a link right now but try searching for this problem as it isn’t limited to keystone AFAIK.

@bholloway bholloway deleted the windows-compatibility branch August 13, 2019 00:34
@bholloway
Copy link
Contributor Author

I vote to close #1262 and open a new issue for the symlink problem @1337cookie and I saw.

@jesstelford
Copy link
Contributor

Yep, good idea ☝️

MadeByMike added a commit that referenced this pull request Aug 20, 2019
commit 80ad540
Author: Jess Telford <[email protected]>
Date:   Mon Aug 19 11:05:50 2019 +1000

    Prepare release (#1501)

commit e5d4ee7
Author: Jess Telford <[email protected]>
Date:   Mon Aug 19 10:48:51 2019 +1000

    Expose 'originalInput' to access control functions for lists & fields (#1500)

commit 5156461
Author: Tim Leslie <[email protected]>
Date:   Fri Aug 16 13:50:22 2019 +1000

    Prepare release (#1497)

commit 5631ce3
Author: sarneaud <[email protected]>
Date:   Fri Aug 16 12:14:57 2019 +1000

    Speed up Knex query condition lookup (#1496)

    For some some of our more complex GraphQL queries, the Knex adapter was
    spending ~100ms generating Knex queries in total.  This patch drops
    that down to a few ms.

    We have some complex-to-build-but-quick-on-the-DB API calls that are
    about twice as fast with this patch.  It also improves performance when
    multiple requests are in flight because tasks aren't blocking one other
    trying to build queries so much.

commit 6882330
Merge: 8140696 0cf142b
Author: sarneaud <[email protected]>
Date:   Wed Aug 14 14:05:50 2019 +1000

    Merge pull request #1494 from keystonejs/knexopt

    Some minor performance improvements to Knex adapter

commit 0cf142b
Merge: b8d30f5 8140696
Author: sarneaud <[email protected]>
Date:   Wed Aug 14 13:59:13 2019 +1000

    Merge branch 'master' into knexopt

commit b8d30f5
Author: Simon Arneaud <[email protected]>
Date:   Wed Aug 14 03:51:04 2019 +0000

    Some minor performance improvements to Knex adapter

commit 8140696
Merge: fe26279 02ac9fa
Author: Mike <[email protected]>
Date:   Wed Aug 14 13:27:52 2019 +1000

    Merge pull request #1491 from keystonejs/list-plugins

    List plugins

commit 02ac9fa
Author: Mike <[email protected]>
Date:   Wed Aug 14 11:50:20 2019 +1000

    Update create-list API

commit 3661609
Author: Tim Leslie <[email protected]>
Date:   Tue Aug 13 16:02:07 2019 +1000

    Add plugins options to createList config

commit fe26279
Author: Jess Telford <[email protected]>
Date:   Tue Aug 13 12:05:26 2019 +1000

    Prepare release (#1490)

commit 3eeb07c
Author: Jess Telford <[email protected]>
Date:   Tue Aug 13 11:50:43 2019 +1000

    Re-instate default config for Knex adapter (#1488)

    * Re-instate default config for Knex adapter

    * Throw the correct connection error from KnexAdapter

commit fcad8fc
Author: Jess Telford <[email protected]>
Date:   Tue Aug 13 10:47:07 2019 +1000

    Prepare release (#1485)

commit e049cfc
Author: Jess Telford <[email protected]>
Date:   Tue Aug 13 10:23:09 2019 +1000

    Default function (#1480)

    * Knex adapter is smarter about default values

    * Support defaultValue as a function in view Controllers

    * Support defaultValue as a function

    * Better waiting code for tests

    * Add changeset

    * Clarify what the `defaultValue` can be in docs.

    Co-Authored-By: Mike <[email protected]>

commit 8715545
Author: sarneaud <[email protected]>
Date:   Tue Aug 13 10:12:55 2019 +1000

    Refactor Knex.js query building (#1472)

    * Refactor Knex.js query building

    We had some bugs in generated SQL having ambiguous column references
    for GraphQL queries containing "many" relationships.  We also had a
    problem with "many" relationship queries triggering intermediate SQL
    queries that were blowing out in size (specifically the auto-generated
    IN clause).

    It wasn't easy to fix both without reworking the SQL generator to make
    subqueries easier to build, and aliases easier to track.

    The implementation of "many" relationships still has room for
    improvement, but it's working well enough for our site now.

    While I was at it, I pushed the work of populateMany() into the main
    query by using array_agg subqueries.  This reduces the number of
    database calls a lot.

    * Fix unused stuff warnings from linter

    * Fix test and prettier failures

    * Add test for many filtering mixed with other relationship filtering

    * Add changeset for knex query builder refactoring

    * Linter fixes

    * Revert populateMany replacement

    * Review fixes

commit 9e58254
Merge: 18be01b c0d1038
Author: Mike <[email protected]>
Date:   Tue Aug 13 09:35:01 2019 +1000

    Merge pull request #1482 from keystonejs/thiagodebastos-patch-1

    Fix typos in CalendarDay/README.md

commit c0d1038
Merge: 84f673e 18be01b
Author: Mike <[email protected]>
Date:   Tue Aug 13 09:27:31 2019 +1000

    Merge branch 'master' into thiagodebastos-patch-1

commit 18be01b
Merge: 33fdc89 3e9a160
Author: Mike <[email protected]>
Date:   Tue Aug 13 06:02:02 2019 +1000

    Merge pull request #1483 from keystonejs/thiagodebastos-patch-2

    Fix potential typo in CalendarDay/README.md

commit 3e9a160
Author: Thiago De Bastos <[email protected]>
Date:   Mon Aug 12 22:41:51 2019 +1000

    Fix potential typo in CalendarDay/README.md

    >## GraphQL
    >
    >`CalendarDay` fields use the `String` type in GraphQL.
    >They produce [?] [and?] values according to their configured `format` but always expect values in ISO8601 (`YYYY-MM-DD`) format.

commit 84f673e
Author: Thiago De Bastos <[email protected]>
Date:   Mon Aug 12 22:29:32 2019 +1000

    Fix typos in CalendarDay/README.md

commit 33fdc89
Author: allcontributors[bot] <46447321+allcontributors[bot]@users.noreply.github.com>
Date:   Mon Aug 12 17:10:32 2019 +1000

    docs: add MadeByMike as a contributor (#1481)

    * docs: update CONTRIBUTING.md

    * docs: update .all-contributorsrc

commit 144e6e8
Author: Mike <[email protected]>
Date:   Mon Aug 12 17:09:02 2019 +1000

    Update adapter config API (#1468)

    * Upsate adapter config options

    * Remove unused options from the base adapter

    * Change adapter default connection string and remove inflection package

    * Update the way the knex adapter handles connection options

    * Update the auth header test to run on knex also

    * Update the build script for knex

    * Some further API design cahanges including removal of .connect() options and the CLI --connnect-to param

    * Update documentation

    * Make Knex and Mongoose options distinct from other adapter options and make name private

    * Updates some tests not working with the new db defaults

    * Change set updates

    * Remove debugging

    * Update .changeset/four-years-sip/changes.md

    Co-Authored-By: Jess Telford <[email protected]>

    * Update packages/adapter-mongoose/README.md

    Co-Authored-By: Jess Telford <[email protected]>

    * Update packages/keystone/lib/adapters/index.js

    Co-Authored-By: Jess Telford <[email protected]>

    * Update index.js

    * Update packages/adapter-knex/lib/adapter-knex.js

    Co-Authored-By: Jess Telford <[email protected]>

    * Remove slugify

    * Move schemaName

    * update API docs

    * Apply suggestions from code review

    Update docs with suggestions

    Co-Authored-By: Jess Telford <[email protected]>

commit fc437e0
Author: Jess Telford <[email protected]>
Date:   Mon Aug 12 13:06:53 2019 +1000

    Tweaks to make tests run cleanly (#1464)

commit be4dfc4
Author: allcontributors[bot] <46447321+allcontributors[bot]@users.noreply.github.com>
Date:   Sun Aug 11 05:11:09 2019 +0000

    docs: add thiagodebastos as a contributor (#1477)

    * docs: update CONTRIBUTING.md

    * docs: update .all-contributorsrc

commit e9da5c1
Author: Thiago De Bastos <[email protected]>
Date:   Sun Aug 11 15:09:23 2019 +1000

    fix typo in schema.md (#1476)

commit 1a1f3dd
Author: allcontributors[bot] <46447321+allcontributors[bot]@users.noreply.github.com>
Date:   Sat Aug 10 02:52:14 2019 +0000

    docs: add kennedybaird as a contributor (#1475)

    * docs: update CONTRIBUTING.md

    * docs: update .all-contributorsrc

commit 4a0b50e
Author: Kennedy Baird <[email protected]>
Date:   Sat Aug 10 14:50:13 2019 +1200

    changed syntax to match (#1474)

commit 992c7e7
Author: Jess Telford <[email protected]>
Date:   Fri Aug 9 15:26:25 2019 +1000

    Force all clicks in Cypress tests to work around occasional failures (#1467)

commit bb6d749
Author: allcontributors[bot] <46447321+allcontributors[bot]@users.noreply.github.com>
Date:   Tue Aug 6 20:57:43 2019 +0000

    docs: add prvit as a contributor (#1466)

    * docs: update CONTRIBUTING.md

    * docs: update .all-contributorsrc

commit 9b8f113
Author: prvit <[email protected]>
Date:   Tue Aug 6 14:02:53 2019 +0300

    changed password auth strategy type to correct one (#1465)

commit 957a40d
Author: Mitchell Hamilton <[email protected]>
Date:   Tue Aug 6 11:45:52 2019 +1000

    Upgrade react-select (#1344)

    * Upgrade react-select

    * Fix a test

    * Upgrade react-select

commit 37b52b7
Author: Ben Holloway <[email protected]>
Date:   Tue Aug 6 09:12:21 2019 +1000

    Windows compatibility (#1463)

    * support windows file paths

    * changeset

commit dda92e6
Merge: 04c642c e46cf0e
Author: Mike <[email protected]>
Date:   Mon Aug 5 15:04:45 2019 +1000

    Merge pull request #1462 from keystonejs/all-contributors/add-jordanoverbye

    docs: add jordanoverbye as a contributor

commit 04c642c
Merge: e146f5a b50a3ef
Author: Jordan Overbye <[email protected]>
Date:   Mon Aug 5 15:04:23 2019 +1000

    Merge pull request #1461 from keystonejs/static-app-fallbacks

    Add support for fallbacks

commit e46cf0e
Author: allcontributors[bot] <46447321+allcontributors[bot]@users.noreply.github.com>
Date:   Mon Aug 5 04:28:00 2019 +0000

    docs: update .all-contributorsrc

commit 37df156
Author: allcontributors[bot] <46447321+allcontributors[bot]@users.noreply.github.com>
Date:   Mon Aug 5 04:27:59 2019 +0000

    docs: update CONTRIBUTING.md

commit b50a3ef
Author: Mike <[email protected]>
Date:   Mon Aug 5 14:11:17 2019 +1000

    Update README.md

commit 69d2ccd
Author: Jordan Overbye <[email protected]>
Date:   Mon Aug 5 13:55:47 2019 +1000

    Update packages/app-static/README.md

    Co-Authored-By: Mitchell Hamilton <[email protected]>

commit fe23c71
Author: Jordan Overbye <[email protected]>
Date:   Mon Aug 5 13:07:29 2019 +1000

    Changeset

    Signed-off-by: Jordan Overbye <[email protected]>

commit 8692f73
Author: Jordan Overbye <[email protected]>
Date:   Mon Aug 5 13:01:06 2019 +1000

    Update docs

    Signed-off-by: Jordan Overbye <[email protected]>

commit 33eeceb
Author: Jordan Overbye <[email protected]>
Date:   Mon Aug 5 13:00:58 2019 +1000

    Add dependencies

    Signed-off-by: Jordan Overbye <[email protected]>

commit bd58f4b
Author: Jordan Overbye <[email protected]>
Date:   Mon Aug 5 12:28:56 2019 +1000

    Add express-history-api-fallback to static app

    Signed-off-by: Jordan Overbye <[email protected]>

commit e146f5a
Author: Jess Telford <[email protected]>
Date:   Mon Jul 29 15:16:49 2019 +1000

    Prepare release (#1451)

commit 653aa0e
Author: Jess Telford <[email protected]>
Date:   Mon Jul 29 14:39:29 2019 +1000

    Remove incorrect Cell view config from Slug field (#1450)

commit 2c7e7ba
Author: Jess Telford <[email protected]>
Date:   Mon Jul 29 14:17:29 2019 +1000

    Ignore vim related files (#1432)

commit d7819a5
Author: Jess Telford <[email protected]>
Date:   Mon Jul 29 14:17:05 2019 +1000

    Slug field (#1446)

commit 5ddf7da
Author: Jess Telford <[email protected]>
Date:   Fri Jul 26 15:09:06 2019 +1000

    Actually clean up the node_modules dir for a 'yarn clean' (#1445)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants