qiskit-documentation/package-lock.json

4346 lines
164 KiB
JSON
Raw Permalink Normal View History

{
"name": "qiskit-documentation",
"version": "0.1.0",
"lockfileVersion": 3,
"requires": true,
"packages": {
"": {
"name": "qiskit-documentation",
"version": "0.1.0",
"license": "Apache-2.0",
"dependencies": {
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"cheerio": "^1.0.0-rc.12",
"cspell": "^8.12.1",
"fast-levenshtein": "^3.0.0",
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"github-slugger": "^2.0.0",
"globby": "^14.0.2",
"gray-matter": "^4.0.3",
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"hast-util-to-mdast": "^8.3.0",
"hast-util-to-text": "^3.1.0",
"is-absolute-url": "^4.0.1",
"js-yaml": "^4.1.0",
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"lodash-es": "^4.17.21",
"markdown-link-extractor": "^3.1.0",
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"mdast": "^3.0.0",
"mkdirp": "^3.0.1",
"p-map": "^6.0.0",
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"rehype-parse": "^8.0.0",
"rehype-remark": "^9.1.2",
"remark-gfm": "^3.0.1",
"remark-math": "^5.1.1",
"remark-mdx": "^2.3.0",
"remark-parse": "^10.0.1",
"remark-stringify": "^10.0.3",
"transform-markdown-links": "^2.1.0",
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"unified": "^10.0.0",
"unist-util-visit": "^4.0.0",
"yargs": "^17.7.2",
"zx": "^8.1.4"
},
"devDependencies": {
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"@playwright/test": "^1.45.2",
"@types/fast-levenshtein": "^0.0.4",
"@types/js-yaml": "^4.0.9",
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"@types/lodash-es": "^4.14.198",
"@types/node": "^20.6.2",
"@types/yargs": "^17.0.28",
"prettier": "^3.3.3",
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"tsx": "^4.16.2",
"typescript": "^5.2.2"
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
}
},
"node_modules/@cspell/cspell-bundled-dicts": {
"version": "8.12.1",
"resolved": "https://registry.npmjs.org/@cspell/cspell-bundled-dicts/-/cspell-bundled-dicts-8.12.1.tgz",
"integrity": "sha512-55wCxlKwRsYCt8uWB65C0xiJ4bP43UE3b/GK01ekyz2fZ11mudMWGMrX/pdKwGIOXFfFqDz3DCRxFs+fHS58oA==",
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"dependencies": {
"@cspell/dict-ada": "^4.0.2",
"@cspell/dict-aws": "^4.0.3",
"@cspell/dict-bash": "^4.1.3",
"@cspell/dict-companies": "^3.1.2",
"@cspell/dict-cpp": "^5.1.11",
"@cspell/dict-cryptocurrencies": "^5.0.0",
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"@cspell/dict-csharp": "^4.0.2",
"@cspell/dict-css": "^4.0.12",
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"@cspell/dict-dart": "^2.0.3",
"@cspell/dict-django": "^4.1.0",
"@cspell/dict-docker": "^1.1.7",
"@cspell/dict-dotnet": "^5.0.2",
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"@cspell/dict-elixir": "^4.0.3",
"@cspell/dict-en_us": "^4.3.23",
"@cspell/dict-en-common-misspellings": "^2.0.3",
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"@cspell/dict-en-gb": "1.1.33",
"@cspell/dict-filetypes": "^3.0.4",
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"@cspell/dict-fonts": "^4.0.0",
"@cspell/dict-fsharp": "^1.0.1",
"@cspell/dict-fullstack": "^3.1.8",
"@cspell/dict-gaming-terms": "^1.0.5",
"@cspell/dict-git": "^3.0.0",
"@cspell/dict-golang": "^6.0.9",
"@cspell/dict-google": "^1.0.1",
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"@cspell/dict-haskell": "^4.0.1",
"@cspell/dict-html": "^4.0.5",
"@cspell/dict-html-symbol-entities": "^4.0.0",
"@cspell/dict-java": "^5.0.7",
"@cspell/dict-julia": "^1.0.1",
"@cspell/dict-k8s": "^1.0.5",
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"@cspell/dict-latex": "^4.0.0",
"@cspell/dict-lorem-ipsum": "^4.0.0",
"@cspell/dict-lua": "^4.0.3",
"@cspell/dict-makefile": "^1.0.0",
"@cspell/dict-monkeyc": "^1.0.6",
"@cspell/dict-node": "^5.0.1",
"@cspell/dict-npm": "^5.0.17",
"@cspell/dict-php": "^4.0.8",
"@cspell/dict-powershell": "^5.0.5",
"@cspell/dict-public-licenses": "^2.0.7",
"@cspell/dict-python": "^4.2.1",
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"@cspell/dict-r": "^2.0.1",
"@cspell/dict-ruby": "^5.0.2",
"@cspell/dict-rust": "^4.0.4",
"@cspell/dict-scala": "^5.0.3",
"@cspell/dict-software-terms": "^4.0.0",
"@cspell/dict-sql": "^2.1.3",
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"@cspell/dict-svelte": "^1.0.2",
"@cspell/dict-swift": "^2.0.1",
"@cspell/dict-terraform": "^1.0.0",
"@cspell/dict-typescript": "^3.1.5",
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"@cspell/dict-vue": "^3.0.0"
},
"engines": {
"node": ">=18"
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
}
},
"node_modules/@cspell/cspell-json-reporter": {
"version": "8.12.1",
"resolved": "https://registry.npmjs.org/@cspell/cspell-json-reporter/-/cspell-json-reporter-8.12.1.tgz",
"integrity": "sha512-nO/3GTk3rBpLRBzkmcKFxbtEDd3FKXfQ5uTCpJ27XYVHYjlU+d4McOYYMClMhpFianVol2JCyberpGAj6bVgLg==",
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"dependencies": {
"@cspell/cspell-types": "8.12.1"
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
},
"engines": {
"node": ">=18"
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
}
},
"node_modules/@cspell/cspell-pipe": {
"version": "8.12.1",
"resolved": "https://registry.npmjs.org/@cspell/cspell-pipe/-/cspell-pipe-8.12.1.tgz",
"integrity": "sha512-lh0zIm43r/Fj3sQWXc68msKnXNrfPOo8VvzL1hOP0v/j2eH61fvELH08/K+nQJ8cCutNZ4zhk9+KMDU4KmsMtw==",
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"engines": {
"node": ">=18"
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
}
},
"node_modules/@cspell/cspell-resolver": {
"version": "8.12.1",
"resolved": "https://registry.npmjs.org/@cspell/cspell-resolver/-/cspell-resolver-8.12.1.tgz",
"integrity": "sha512-3HE04m7DS/6xYpWPN2QBGCHr26pvxHa78xYk+PjiPD2Q49ceqTNdFcZOYd+Wba8HbRXSukchSLhrTujmPEzqpw==",
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"dependencies": {
"global-directory": "^4.0.1"
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
},
"engines": {
"node": ">=18"
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
}
},
"node_modules/@cspell/cspell-service-bus": {
"version": "8.12.1",
"resolved": "https://registry.npmjs.org/@cspell/cspell-service-bus/-/cspell-service-bus-8.12.1.tgz",
"integrity": "sha512-UQPddS38dQ/FG00y2wginCzdS6yxryiGrWXSD/P59idCrYYDCYnI9pPsx4u10tmRkW1zJ+O7gGCsXw7xa5DAJQ==",
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"engines": {
"node": ">=18"
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
}
},
"node_modules/@cspell/cspell-types": {
"version": "8.12.1",
"resolved": "https://registry.npmjs.org/@cspell/cspell-types/-/cspell-types-8.12.1.tgz",
"integrity": "sha512-17POyyRgl7m7mMuv1qk2xX6E5bdT0F3247vloBCdUMyaVtmtN4uEiQ/jqU5vtW02vxlKjKS0HcTvKz4EVfSlzQ==",
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"engines": {
"node": ">=18"
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
}
},
"node_modules/@cspell/dict-ada": {
"version": "4.0.2",
"resolved": "https://registry.npmjs.org/@cspell/dict-ada/-/dict-ada-4.0.2.tgz",
"integrity": "sha512-0kENOWQeHjUlfyId/aCM/mKXtkEgV0Zu2RhUXCBr4hHo9F9vph+Uu8Ww2b0i5a4ZixoIkudGA+eJvyxrG1jUpA=="
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
},
"node_modules/@cspell/dict-aws": {
"version": "4.0.3",
"resolved": "https://registry.npmjs.org/@cspell/dict-aws/-/dict-aws-4.0.3.tgz",
"integrity": "sha512-0C0RQ4EM29fH0tIYv+EgDQEum0QI6OrmjENC9u98pB8UcnYxGG/SqinuPxo+TgcEuInj0Q73MsBpJ1l5xUnrsw=="
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
},
"node_modules/@cspell/dict-bash": {
"version": "4.1.3",
"resolved": "https://registry.npmjs.org/@cspell/dict-bash/-/dict-bash-4.1.3.tgz",
"integrity": "sha512-tOdI3QVJDbQSwPjUkOiQFhYcu2eedmX/PtEpVWg0aFps/r6AyjUQINtTgpqMYnYuq8O1QUIQqnpx21aovcgZCw=="
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
},
"node_modules/@cspell/dict-companies": {
"version": "3.1.3",
"resolved": "https://registry.npmjs.org/@cspell/dict-companies/-/dict-companies-3.1.3.tgz",
"integrity": "sha512-qaAmfKtQLA7Sbe9zfFVpcwyG92cx6+EiWIpPURv11Ng2QMv2PKhYcterUJBooAvgqD0/qq+AsLN8MREloY5Mdw=="
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
},
"node_modules/@cspell/dict-cpp": {
"version": "5.1.12",
"resolved": "https://registry.npmjs.org/@cspell/dict-cpp/-/dict-cpp-5.1.12.tgz",
"integrity": "sha512-6lXLOFIa+k/qBcu0bjaE/Kc6v3sh9VhsDOXD1Dalm3zgd0QIMjp5XBmkpSdCAK3pWCPV0Se7ysVLDfCea1BuXg=="
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
},
"node_modules/@cspell/dict-cryptocurrencies": {
"version": "5.0.0",
"resolved": "https://registry.npmjs.org/@cspell/dict-cryptocurrencies/-/dict-cryptocurrencies-5.0.0.tgz",
"integrity": "sha512-Z4ARIw5+bvmShL+4ZrhDzGhnc9znaAGHOEMaB/GURdS/jdoreEDY34wdN0NtdLHDO5KO7GduZnZyqGdRoiSmYA=="
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
},
"node_modules/@cspell/dict-csharp": {
"version": "4.0.2",
"resolved": "https://registry.npmjs.org/@cspell/dict-csharp/-/dict-csharp-4.0.2.tgz",
"integrity": "sha512-1JMofhLK+4p4KairF75D3A924m5ERMgd1GvzhwK2geuYgd2ZKuGW72gvXpIV7aGf52E3Uu1kDXxxGAiZ5uVG7g=="
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
},
"node_modules/@cspell/dict-css": {
"version": "4.0.12",
"resolved": "https://registry.npmjs.org/@cspell/dict-css/-/dict-css-4.0.12.tgz",
"integrity": "sha512-vGBgPM92MkHQF5/2jsWcnaahOZ+C6OE/fPvd5ScBP72oFY9tn5GLuomcyO0z8vWCr2e0nUSX1OGimPtcQAlvSw=="
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
},
"node_modules/@cspell/dict-dart": {
"version": "2.0.3",
"resolved": "https://registry.npmjs.org/@cspell/dict-dart/-/dict-dart-2.0.3.tgz",
"integrity": "sha512-cLkwo1KT5CJY5N5RJVHks2genFkNCl/WLfj+0fFjqNR+tk3tBI1LY7ldr9piCtSFSm4x9pO1x6IV3kRUY1lLiw=="
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
},
"node_modules/@cspell/dict-data-science": {
"version": "2.0.1",
"resolved": "https://registry.npmjs.org/@cspell/dict-data-science/-/dict-data-science-2.0.1.tgz",
"integrity": "sha512-xeutkzK0eBe+LFXOFU2kJeAYO6IuFUc1g7iRLr7HeCmlC4rsdGclwGHh61KmttL3+YHQytYStxaRBdGAXWC8Lw=="
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
},
"node_modules/@cspell/dict-django": {
"version": "4.1.0",
"resolved": "https://registry.npmjs.org/@cspell/dict-django/-/dict-django-4.1.0.tgz",
"integrity": "sha512-bKJ4gPyrf+1c78Z0Oc4trEB9MuhcB+Yg+uTTWsvhY6O2ncFYbB/LbEZfqhfmmuK/XJJixXfI1laF2zicyf+l0w=="
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
},
"node_modules/@cspell/dict-docker": {
"version": "1.1.7",
"resolved": "https://registry.npmjs.org/@cspell/dict-docker/-/dict-docker-1.1.7.tgz",
"integrity": "sha512-XlXHAr822euV36GGsl2J1CkBIVg3fZ6879ZOg5dxTIssuhUOCiV2BuzKZmt6aIFmcdPmR14+9i9Xq+3zuxeX0A=="
},
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"node_modules/@cspell/dict-dotnet": {
"version": "5.0.2",
"resolved": "https://registry.npmjs.org/@cspell/dict-dotnet/-/dict-dotnet-5.0.2.tgz",
"integrity": "sha512-UD/pO2A2zia/YZJ8Kck/F6YyDSpCMq0YvItpd4YbtDVzPREfTZ48FjZsbYi4Jhzwfvc6o8R56JusAE58P+4sNQ=="
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
},
"node_modules/@cspell/dict-elixir": {
"version": "4.0.3",
"resolved": "https://registry.npmjs.org/@cspell/dict-elixir/-/dict-elixir-4.0.3.tgz",
"integrity": "sha512-g+uKLWvOp9IEZvrIvBPTr/oaO6619uH/wyqypqvwpmnmpjcfi8+/hqZH8YNKt15oviK8k4CkINIqNhyndG9d9Q=="
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
},
"node_modules/@cspell/dict-en_us": {
"version": "4.3.23",
"resolved": "https://registry.npmjs.org/@cspell/dict-en_us/-/dict-en_us-4.3.23.tgz",
"integrity": "sha512-l0SoEQBsi3zDSl3OuL4/apBkxjuj4hLIg/oy6+gZ7LWh03rKdF6VNtSZNXWAmMY+pmb1cGA3ouleTiJIglbsIg=="
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
},
"node_modules/@cspell/dict-en-common-misspellings": {
"version": "2.0.3",
"resolved": "https://registry.npmjs.org/@cspell/dict-en-common-misspellings/-/dict-en-common-misspellings-2.0.3.tgz",
"integrity": "sha512-8nF1z9nUiSgMyikL66HTbDO7jCGtB24TxKBasXIBwkBKMDZgA2M883iXdeByy6m1JJUcCGFkSftVYp2W0bUgjw=="
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
},
"node_modules/@cspell/dict-en-gb": {
"version": "1.1.33",
"resolved": "https://registry.npmjs.org/@cspell/dict-en-gb/-/dict-en-gb-1.1.33.tgz",
"integrity": "sha512-tKSSUf9BJEV+GJQAYGw5e+ouhEe2ZXE620S7BLKe3ZmpnjlNG9JqlnaBhkIMxKnNFkLY2BP/EARzw31AZnOv4g=="
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
},
"node_modules/@cspell/dict-filetypes": {
"version": "3.0.4",
"resolved": "https://registry.npmjs.org/@cspell/dict-filetypes/-/dict-filetypes-3.0.4.tgz",
"integrity": "sha512-IBi8eIVdykoGgIv5wQhOURi5lmCNJq0we6DvqKoPQJHthXbgsuO1qrHSiUVydMiQl/XvcnUWTMeAlVUlUClnVg=="
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
},
"node_modules/@cspell/dict-fonts": {
"version": "4.0.0",
"resolved": "https://registry.npmjs.org/@cspell/dict-fonts/-/dict-fonts-4.0.0.tgz",
"integrity": "sha512-t9V4GeN/m517UZn63kZPUYP3OQg5f0OBLSd3Md5CU3eH1IFogSvTzHHnz4Wqqbv8NNRiBZ3HfdY/pqREZ6br3Q=="
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
},
"node_modules/@cspell/dict-fsharp": {
"version": "1.0.1",
"resolved": "https://registry.npmjs.org/@cspell/dict-fsharp/-/dict-fsharp-1.0.1.tgz",
"integrity": "sha512-23xyPcD+j+NnqOjRHgW3IU7Li912SX9wmeefcY0QxukbAxJ/vAN4rBpjSwwYZeQPAn3fxdfdNZs03fg+UM+4yQ=="
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
},
"node_modules/@cspell/dict-fullstack": {
"version": "3.2.0",
"resolved": "https://registry.npmjs.org/@cspell/dict-fullstack/-/dict-fullstack-3.2.0.tgz",
"integrity": "sha512-sIGQwU6G3rLTo+nx0GKyirR5dQSFeTIzFTOrURw51ISf+jKG9a3OmvsVtc2OANfvEAOLOC9Wfd8WYhmsO8KRDQ=="
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
},
"node_modules/@cspell/dict-gaming-terms": {
"version": "1.0.5",
"resolved": "https://registry.npmjs.org/@cspell/dict-gaming-terms/-/dict-gaming-terms-1.0.5.tgz",
"integrity": "sha512-C3riccZDD3d9caJQQs1+MPfrUrQ+0KHdlj9iUR1QD92FgTOF6UxoBpvHUUZ9YSezslcmpFQK4xQQ5FUGS7uWfw=="
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
},
"node_modules/@cspell/dict-git": {
"version": "3.0.0",
"resolved": "https://registry.npmjs.org/@cspell/dict-git/-/dict-git-3.0.0.tgz",
"integrity": "sha512-simGS/lIiXbEaqJu9E2VPoYW1OTC2xrwPPXNXFMa2uo/50av56qOuaxDrZ5eH1LidFXwoc8HROCHYeKoNrDLSw=="
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
},
"node_modules/@cspell/dict-golang": {
"version": "6.0.9",
"resolved": "https://registry.npmjs.org/@cspell/dict-golang/-/dict-golang-6.0.9.tgz",
"integrity": "sha512-etDt2WQauyEQDA+qPS5QtkYTb2I9l5IfQftAllVoB1aOrT6bxxpHvMEpJ0Hsn/vezxrCqa/BmtUbRxllIxIuSg=="
},
"node_modules/@cspell/dict-google": {
"version": "1.0.1",
"resolved": "https://registry.npmjs.org/@cspell/dict-google/-/dict-google-1.0.1.tgz",
"integrity": "sha512-dQr4M3n95uOhtloNSgB9tYYGXGGEGEykkFyRtfcp5pFuEecYUa0BSgtlGKx9RXVtJtKgR+yFT/a5uQSlt8WjqQ=="
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
},
"node_modules/@cspell/dict-haskell": {
"version": "4.0.1",
"resolved": "https://registry.npmjs.org/@cspell/dict-haskell/-/dict-haskell-4.0.1.tgz",
"integrity": "sha512-uRrl65mGrOmwT7NxspB4xKXFUenNC7IikmpRZW8Uzqbqcu7ZRCUfstuVH7T1rmjRgRkjcIjE4PC11luDou4wEQ=="
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
},
"node_modules/@cspell/dict-html": {
"version": "4.0.5",
"resolved": "https://registry.npmjs.org/@cspell/dict-html/-/dict-html-4.0.5.tgz",
"integrity": "sha512-p0brEnRybzSSWi8sGbuVEf7jSTDmXPx7XhQUb5bgG6b54uj+Z0Qf0V2n8b/LWwIPJNd1GygaO9l8k3HTCy1h4w=="
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
},
"node_modules/@cspell/dict-html-symbol-entities": {
"version": "4.0.0",
"resolved": "https://registry.npmjs.org/@cspell/dict-html-symbol-entities/-/dict-html-symbol-entities-4.0.0.tgz",
"integrity": "sha512-HGRu+48ErJjoweR5IbcixxETRewrBb0uxQBd6xFGcxbEYCX8CnQFTAmKI5xNaIt2PKaZiJH3ijodGSqbKdsxhw=="
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
},
"node_modules/@cspell/dict-java": {
"version": "5.0.7",
"resolved": "https://registry.npmjs.org/@cspell/dict-java/-/dict-java-5.0.7.tgz",
"integrity": "sha512-ejQ9iJXYIq7R09BScU2y5OUGrSqwcD+J5mHFOKbduuQ5s/Eh/duz45KOzykeMLI6KHPVxhBKpUPBWIsfewECpQ=="
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
},
"node_modules/@cspell/dict-julia": {
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"version": "1.0.1",
"resolved": "https://registry.npmjs.org/@cspell/dict-julia/-/dict-julia-1.0.1.tgz",
"integrity": "sha512-4JsCLCRhhLMLiaHpmR7zHFjj1qOauzDI5ZzCNQS31TUMfsOo26jAKDfo0jljFAKgw5M2fEG7sKr8IlPpQAYrmQ=="
},
"node_modules/@cspell/dict-k8s": {
"version": "1.0.6",
"resolved": "https://registry.npmjs.org/@cspell/dict-k8s/-/dict-k8s-1.0.6.tgz",
"integrity": "sha512-srhVDtwrd799uxMpsPOQqeDJY+gEocgZpoK06EFrb4GRYGhv7lXo9Fb+xQMyQytzOW9dw4DNOEck++nacDuymg=="
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
},
"node_modules/@cspell/dict-latex": {
"version": "4.0.0",
"resolved": "https://registry.npmjs.org/@cspell/dict-latex/-/dict-latex-4.0.0.tgz",
"integrity": "sha512-LPY4y6D5oI7D3d+5JMJHK/wxYTQa2lJMSNxps2JtuF8hbAnBQb3igoWEjEbIbRRH1XBM0X8dQqemnjQNCiAtxQ=="
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
},
"node_modules/@cspell/dict-lorem-ipsum": {
"version": "4.0.0",
"resolved": "https://registry.npmjs.org/@cspell/dict-lorem-ipsum/-/dict-lorem-ipsum-4.0.0.tgz",
"integrity": "sha512-1l3yjfNvMzZPibW8A7mQU4kTozwVZVw0AvFEdy+NcqtbxH+TvbSkNMqROOFWrkD2PjnKG0+Ea0tHI2Pi6Gchnw=="
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
},
"node_modules/@cspell/dict-lua": {
"version": "4.0.3",
"resolved": "https://registry.npmjs.org/@cspell/dict-lua/-/dict-lua-4.0.3.tgz",
"integrity": "sha512-lDHKjsrrbqPaea13+G9s0rtXjMO06gPXPYRjRYawbNmo4E/e3XFfVzeci3OQDQNDmf2cPOwt9Ef5lu2lDmwfJg=="
},
"node_modules/@cspell/dict-makefile": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/@cspell/dict-makefile/-/dict-makefile-1.0.0.tgz",
"integrity": "sha512-3W9tHPcSbJa6s0bcqWo6VisEDTSN5zOtDbnPabF7rbyjRpNo0uHXHRJQF8gAbFzoTzBBhgkTmrfSiuyQm7vBUQ=="
},
"node_modules/@cspell/dict-monkeyc": {
"version": "1.0.6",
"resolved": "https://registry.npmjs.org/@cspell/dict-monkeyc/-/dict-monkeyc-1.0.6.tgz",
"integrity": "sha512-oO8ZDu/FtZ55aq9Mb67HtaCnsLn59xvhO/t2mLLTHAp667hJFxpp7bCtr2zOrR1NELzFXmKln/2lw/PvxMSvrA=="
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
},
"node_modules/@cspell/dict-node": {
"version": "5.0.1",
"resolved": "https://registry.npmjs.org/@cspell/dict-node/-/dict-node-5.0.1.tgz",
"integrity": "sha512-lax/jGz9h3Dv83v8LHa5G0bf6wm8YVRMzbjJPG/9rp7cAGPtdrga+XANFq+B7bY5+jiSA3zvj10LUFCFjnnCCg=="
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
},
"node_modules/@cspell/dict-npm": {
"version": "5.0.18",
"resolved": "https://registry.npmjs.org/@cspell/dict-npm/-/dict-npm-5.0.18.tgz",
"integrity": "sha512-weMTyxWpzz19q4wv9n183BtFvdD5fCjtze+bFKpl+4rO/YlPhHL2cXLAeexJz/VDSBecwX4ybTZYoknd1h2J4w=="
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
},
"node_modules/@cspell/dict-php": {
"version": "4.0.8",
"resolved": "https://registry.npmjs.org/@cspell/dict-php/-/dict-php-4.0.8.tgz",
"integrity": "sha512-TBw3won4MCBQ2wdu7kvgOCR3dY2Tb+LJHgDUpuquy3WnzGiSDJ4AVelrZdE1xu7mjFJUr4q48aB21YT5uQqPZA=="
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
},
"node_modules/@cspell/dict-powershell": {
"version": "5.0.5",
"resolved": "https://registry.npmjs.org/@cspell/dict-powershell/-/dict-powershell-5.0.5.tgz",
"integrity": "sha512-3JVyvMoDJesAATYGOxcUWPbQPUvpZmkinV3m8HL1w1RrjeMVXXuK7U1jhopSneBtLhkU+9HKFwgh9l9xL9mY2Q=="
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
},
"node_modules/@cspell/dict-public-licenses": {
"version": "2.0.7",
"resolved": "https://registry.npmjs.org/@cspell/dict-public-licenses/-/dict-public-licenses-2.0.7.tgz",
"integrity": "sha512-KlBXuGcN3LE7tQi/GEqKiDewWGGuopiAD0zRK1QilOx5Co8XAvs044gk4MNIQftc8r0nHeUI+irJKLGcR36DIQ=="
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
},
"node_modules/@cspell/dict-python": {
"version": "4.2.3",
"resolved": "https://registry.npmjs.org/@cspell/dict-python/-/dict-python-4.2.3.tgz",
"integrity": "sha512-C1CPX9wwEGgcHv/p7KfjuIOp1G6KNyx5gWYweAd6/KPv+ZpeM1v572zFUTmpO8WDuAfKFf00nqYL8/GmCENWBw==",
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"dependencies": {
"@cspell/dict-data-science": "^2.0.1"
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
}
},
"node_modules/@cspell/dict-r": {
"version": "2.0.1",
"resolved": "https://registry.npmjs.org/@cspell/dict-r/-/dict-r-2.0.1.tgz",
"integrity": "sha512-KCmKaeYMLm2Ip79mlYPc8p+B2uzwBp4KMkzeLd5E6jUlCL93Y5Nvq68wV5fRLDRTf7N1LvofkVFWfDcednFOgA=="
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
},
"node_modules/@cspell/dict-ruby": {
"version": "5.0.2",
"resolved": "https://registry.npmjs.org/@cspell/dict-ruby/-/dict-ruby-5.0.2.tgz",
"integrity": "sha512-cIh8KTjpldzFzKGgrqUX4bFyav5lC52hXDKo4LbRuMVncs3zg4hcSf4HtURY+f2AfEZzN6ZKzXafQpThq3dl2g=="
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
},
"node_modules/@cspell/dict-rust": {
"version": "4.0.5",
"resolved": "https://registry.npmjs.org/@cspell/dict-rust/-/dict-rust-4.0.5.tgz",
"integrity": "sha512-DIvlPRDemjKQy8rCqftAgGNZxY5Bg+Ps7qAIJjxkSjmMETyDgl0KTVuaJPt7EK4jJt6uCZ4ILy96npsHDPwoXA=="
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
},
"node_modules/@cspell/dict-scala": {
"version": "5.0.3",
"resolved": "https://registry.npmjs.org/@cspell/dict-scala/-/dict-scala-5.0.3.tgz",
"integrity": "sha512-4yGb4AInT99rqprxVNT9TYb1YSpq58Owzq7zi3ZS5T0u899Y4VsxsBiOgHnQ/4W+ygi+sp+oqef8w8nABR2lkg=="
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
},
"node_modules/@cspell/dict-software-terms": {
"version": "4.0.3",
"resolved": "https://registry.npmjs.org/@cspell/dict-software-terms/-/dict-software-terms-4.0.3.tgz",
"integrity": "sha512-65QAVMc3YlcI7PcqWRY5ox53tTWC8aktUZdJYCVs4VDBPUCTSDnTSmSreeg4F5Z468clv9KF/S0PkxbLjgW72A=="
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
},
"node_modules/@cspell/dict-sql": {
"version": "2.1.3",
"resolved": "https://registry.npmjs.org/@cspell/dict-sql/-/dict-sql-2.1.3.tgz",
"integrity": "sha512-SEyTNKJrjqD6PAzZ9WpdSu6P7wgdNtGV2RV8Kpuw1x6bV+YsSptuClYG+JSdRExBTE6LwIe1bTklejUp3ZP8TQ=="
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
},
"node_modules/@cspell/dict-svelte": {
"version": "1.0.2",
"resolved": "https://registry.npmjs.org/@cspell/dict-svelte/-/dict-svelte-1.0.2.tgz",
"integrity": "sha512-rPJmnn/GsDs0btNvrRBciOhngKV98yZ9SHmg8qI6HLS8hZKvcXc0LMsf9LLuMK1TmS2+WQFAan6qeqg6bBxL2Q=="
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
},
"node_modules/@cspell/dict-swift": {
"version": "2.0.1",
"resolved": "https://registry.npmjs.org/@cspell/dict-swift/-/dict-swift-2.0.1.tgz",
"integrity": "sha512-gxrCMUOndOk7xZFmXNtkCEeroZRnS2VbeaIPiymGRHj5H+qfTAzAKxtv7jJbVA3YYvEzWcVE2oKDP4wcbhIERw=="
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
},
"node_modules/@cspell/dict-terraform": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/@cspell/dict-terraform/-/dict-terraform-1.0.0.tgz",
"integrity": "sha512-Ak+vy4HP/bOgzf06BAMC30+ZvL9mzv21xLM2XtfnBLTDJGdxlk/nK0U6QT8VfFLqJ0ZZSpyOxGsUebWDCTr/zQ=="
},
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"node_modules/@cspell/dict-typescript": {
"version": "3.1.6",
"resolved": "https://registry.npmjs.org/@cspell/dict-typescript/-/dict-typescript-3.1.6.tgz",
"integrity": "sha512-1beC6O4P/j23VuxX+i0+F7XqPVc3hhiAzGJHEKqnWf5cWAXQtg0xz3xQJ5MvYx2a7iLaSa+lu7+05vG9UHyu9Q=="
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
},
"node_modules/@cspell/dict-vue": {
"version": "3.0.0",
"resolved": "https://registry.npmjs.org/@cspell/dict-vue/-/dict-vue-3.0.0.tgz",
"integrity": "sha512-niiEMPWPV9IeRBRzZ0TBZmNnkK3olkOPYxC1Ny2AX4TGlYRajcW0WUtoSHmvvjZNfWLSg2L6ruiBeuPSbjnG6A=="
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
},
"node_modules/@cspell/dynamic-import": {
"version": "8.12.1",
"resolved": "https://registry.npmjs.org/@cspell/dynamic-import/-/dynamic-import-8.12.1.tgz",
"integrity": "sha512-18faXHALiMsXtG3v67qeyDhNRZVtkhX5Je2qw8iZQB/i61y0Mfm22iiZeXsKImrXbwP0acyhRkRA1sp1NaQmOw==",
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"dependencies": {
"import-meta-resolve": "^4.1.0"
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
},
"engines": {
"node": ">=18.0"
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
}
},
"node_modules/@cspell/strong-weak-map": {
"version": "8.12.1",
"resolved": "https://registry.npmjs.org/@cspell/strong-weak-map/-/strong-weak-map-8.12.1.tgz",
"integrity": "sha512-0O5qGHRXoKl0+hXGdelox2awrCMr8LXObUcWwYbSih7HIm4DwhxMO4qjDFye1NdjW0P88yhpQ23J2ceSto9C5Q==",
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"engines": {
"node": ">=18"
}
},
"node_modules/@cspell/url": {
"version": "8.12.1",
"resolved": "https://registry.npmjs.org/@cspell/url/-/url-8.12.1.tgz",
"integrity": "sha512-mUYaDniHVLw0YXn2egT2e21MYubMAf+1LDeC0kkbg4VWNxSlC1Ksyv6pqhos495esaa8OCjizdIdnGSF6al9Rw==",
"engines": {
"node": ">=18.0"
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
}
},
"node_modules/@esbuild/aix-ppc64": {
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"version": "0.21.5",
"resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.21.5.tgz",
"integrity": "sha512-1SDgH6ZSPTlggy1yI6+Dbkiz8xzpHJEVAlF/AM1tHPLsf5STom9rwtjE4hKAF20FfXXNTFqEYXyJNWh1GiZedQ==",
"cpu": [
"ppc64"
],
"dev": true,
"optional": true,
"os": [
"aix"
],
"engines": {
"node": ">=12"
}
},
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"node_modules/@esbuild/android-arm": {
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"version": "0.21.5",
"resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.21.5.tgz",
"integrity": "sha512-vCPvzSjpPHEi1siZdlvAlsPxXl7WbOVUBBAowWug4rJHb68Ox8KualB+1ocNvT5fjv6wpkX6o/iEpbDrf68zcg==",
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"cpu": [
"arm"
],
"dev": true,
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"optional": true,
"os": [
"android"
],
"engines": {
"node": ">=12"
}
},
"node_modules/@esbuild/android-arm64": {
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"version": "0.21.5",
"resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.21.5.tgz",
"integrity": "sha512-c0uX9VAUBQ7dTDCjq+wdyGLowMdtR/GoC2U5IYk/7D1H1JYC0qseD7+11iMP2mRLN9RcCMRcjC4YMclCzGwS/A==",
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"cpu": [
"arm64"
],
"dev": true,
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"optional": true,
"os": [
"android"
],
"engines": {
"node": ">=12"
}
},
"node_modules/@esbuild/android-x64": {
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"version": "0.21.5",
"resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.21.5.tgz",
"integrity": "sha512-D7aPRUUNHRBwHxzxRvp856rjUHRFW1SdQATKXH2hqA0kAZb1hKmi02OpYRacl0TxIGz/ZmXWlbZgjwWYaCakTA==",
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"cpu": [
"x64"
],
"dev": true,
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"optional": true,
"os": [
"android"
],
"engines": {
"node": ">=12"
}
},
"node_modules/@esbuild/darwin-arm64": {
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"version": "0.21.5",
"resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.21.5.tgz",
"integrity": "sha512-DwqXqZyuk5AiWWf3UfLiRDJ5EDd49zg6O9wclZ7kUMv2WRFr4HKjXp/5t8JZ11QbQfUS6/cRCKGwYhtNAY88kQ==",
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"cpu": [
"arm64"
],
"dev": true,
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"optional": true,
"os": [
"darwin"
],
"engines": {
"node": ">=12"
}
},
"node_modules/@esbuild/darwin-x64": {
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"version": "0.21.5",
"resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.21.5.tgz",
"integrity": "sha512-se/JjF8NlmKVG4kNIuyWMV/22ZaerB+qaSi5MdrXtd6R08kvs2qCN4C09miupktDitvh8jRFflwGFBQcxZRjbw==",
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"cpu": [
"x64"
],
"dev": true,
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"optional": true,
"os": [
"darwin"
],
"engines": {
"node": ">=12"
}
},
"node_modules/@esbuild/freebsd-arm64": {
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"version": "0.21.5",
"resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.21.5.tgz",
"integrity": "sha512-5JcRxxRDUJLX8JXp/wcBCy3pENnCgBR9bN6JsY4OmhfUtIHe3ZW0mawA7+RDAcMLrMIZaf03NlQiX9DGyB8h4g==",
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"cpu": [
"arm64"
],
"dev": true,
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"optional": true,
"os": [
"freebsd"
],
"engines": {
"node": ">=12"
}
},
"node_modules/@esbuild/freebsd-x64": {
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"version": "0.21.5",
"resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.21.5.tgz",
"integrity": "sha512-J95kNBj1zkbMXtHVH29bBriQygMXqoVQOQYA+ISs0/2l3T9/kj42ow2mpqerRBxDJnmkUDCaQT/dfNXWX/ZZCQ==",
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"cpu": [
"x64"
],
"dev": true,
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"optional": true,
"os": [
"freebsd"
],
"engines": {
"node": ">=12"
}
},
"node_modules/@esbuild/linux-arm": {
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"version": "0.21.5",
"resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.21.5.tgz",
"integrity": "sha512-bPb5AHZtbeNGjCKVZ9UGqGwo8EUu4cLq68E95A53KlxAPRmUyYv2D6F0uUI65XisGOL1hBP5mTronbgo+0bFcA==",
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"cpu": [
"arm"
],
"dev": true,
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"optional": true,
"os": [
"linux"
],
"engines": {
"node": ">=12"
}
},
"node_modules/@esbuild/linux-arm64": {
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"version": "0.21.5",
"resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.21.5.tgz",
"integrity": "sha512-ibKvmyYzKsBeX8d8I7MH/TMfWDXBF3db4qM6sy+7re0YXya+K1cem3on9XgdT2EQGMu4hQyZhan7TeQ8XkGp4Q==",
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"cpu": [
"arm64"
],
"dev": true,
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"optional": true,
"os": [
"linux"
],
"engines": {
"node": ">=12"
}
},
"node_modules/@esbuild/linux-ia32": {
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"version": "0.21.5",
"resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.21.5.tgz",
"integrity": "sha512-YvjXDqLRqPDl2dvRODYmmhz4rPeVKYvppfGYKSNGdyZkA01046pLWyRKKI3ax8fbJoK5QbxblURkwK/MWY18Tg==",
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"cpu": [
"ia32"
],
"dev": true,
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"optional": true,
"os": [
"linux"
],
"engines": {
"node": ">=12"
}
},
"node_modules/@esbuild/linux-loong64": {
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"version": "0.21.5",
"resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.21.5.tgz",
"integrity": "sha512-uHf1BmMG8qEvzdrzAqg2SIG/02+4/DHB6a9Kbya0XDvwDEKCoC8ZRWI5JJvNdUjtciBGFQ5PuBlpEOXQj+JQSg==",
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"cpu": [
"loong64"
],
"dev": true,
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"optional": true,
"os": [
"linux"
],
"engines": {
"node": ">=12"
}
},
"node_modules/@esbuild/linux-mips64el": {
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"version": "0.21.5",
"resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.21.5.tgz",
"integrity": "sha512-IajOmO+KJK23bj52dFSNCMsz1QP1DqM6cwLUv3W1QwyxkyIWecfafnI555fvSGqEKwjMXVLokcV5ygHW5b3Jbg==",
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"cpu": [
"mips64el"
],
"dev": true,
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"optional": true,
"os": [
"linux"
],
"engines": {
"node": ">=12"
}
},
"node_modules/@esbuild/linux-ppc64": {
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"version": "0.21.5",
"resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.21.5.tgz",
"integrity": "sha512-1hHV/Z4OEfMwpLO8rp7CvlhBDnjsC3CttJXIhBi+5Aj5r+MBvy4egg7wCbe//hSsT+RvDAG7s81tAvpL2XAE4w==",
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"cpu": [
"ppc64"
],
"dev": true,
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"optional": true,
"os": [
"linux"
],
"engines": {
"node": ">=12"
}
},
"node_modules/@esbuild/linux-riscv64": {
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"version": "0.21.5",
"resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.21.5.tgz",
"integrity": "sha512-2HdXDMd9GMgTGrPWnJzP2ALSokE/0O5HhTUvWIbD3YdjME8JwvSCnNGBnTThKGEB91OZhzrJ4qIIxk/SBmyDDA==",
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"cpu": [
"riscv64"
],
"dev": true,
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"optional": true,
"os": [
"linux"
],
"engines": {
"node": ">=12"
}
},
"node_modules/@esbuild/linux-s390x": {
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"version": "0.21.5",
"resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.21.5.tgz",
"integrity": "sha512-zus5sxzqBJD3eXxwvjN1yQkRepANgxE9lgOW2qLnmr8ikMTphkjgXu1HR01K4FJg8h1kEEDAqDcZQtbrRnB41A==",
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"cpu": [
"s390x"
],
"dev": true,
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"optional": true,
"os": [
"linux"
],
"engines": {
"node": ">=12"
}
},
"node_modules/@esbuild/linux-x64": {
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"version": "0.21.5",
"resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.21.5.tgz",
"integrity": "sha512-1rYdTpyv03iycF1+BhzrzQJCdOuAOtaqHTWJZCWvijKD2N5Xu0TtVC8/+1faWqcP9iBCWOmjmhoH94dH82BxPQ==",
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"cpu": [
"x64"
],
"dev": true,
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"optional": true,
"os": [
"linux"
],
"engines": {
"node": ">=12"
}
},
"node_modules/@esbuild/netbsd-x64": {
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"version": "0.21.5",
"resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.21.5.tgz",
"integrity": "sha512-Woi2MXzXjMULccIwMnLciyZH4nCIMpWQAs049KEeMvOcNADVxo0UBIQPfSmxB3CWKedngg7sWZdLvLczpe0tLg==",
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"cpu": [
"x64"
],
"dev": true,
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"optional": true,
"os": [
"netbsd"
],
"engines": {
"node": ">=12"
}
},
"node_modules/@esbuild/openbsd-x64": {
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"version": "0.21.5",
"resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.21.5.tgz",
"integrity": "sha512-HLNNw99xsvx12lFBUwoT8EVCsSvRNDVxNpjZ7bPn947b8gJPzeHWyNVhFsaerc0n3TsbOINvRP2byTZ5LKezow==",
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"cpu": [
"x64"
],
"dev": true,
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"optional": true,
"os": [
"openbsd"
],
"engines": {
"node": ">=12"
}
},
"node_modules/@esbuild/sunos-x64": {
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"version": "0.21.5",
"resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.21.5.tgz",
"integrity": "sha512-6+gjmFpfy0BHU5Tpptkuh8+uw3mnrvgs+dSPQXQOv3ekbordwnzTVEb4qnIvQcYXq6gzkyTnoZ9dZG+D4garKg==",
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"cpu": [
"x64"
],
"dev": true,
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"optional": true,
"os": [
"sunos"
],
"engines": {
"node": ">=12"
}
},
"node_modules/@esbuild/win32-arm64": {
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"version": "0.21.5",
"resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.21.5.tgz",
"integrity": "sha512-Z0gOTd75VvXqyq7nsl93zwahcTROgqvuAcYDUr+vOv8uHhNSKROyU961kgtCD1e95IqPKSQKH7tBTslnS3tA8A==",
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"cpu": [
"arm64"
],
"dev": true,
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"optional": true,
"os": [
"win32"
],
"engines": {
"node": ">=12"
}
},
"node_modules/@esbuild/win32-ia32": {
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"version": "0.21.5",
"resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.21.5.tgz",
"integrity": "sha512-SWXFF1CL2RVNMaVs+BBClwtfZSvDgtL//G/smwAc5oVK/UPu2Gu9tIaRgFmYFFKrmg3SyAjSrElf0TiJ1v8fYA==",
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"cpu": [
"ia32"
],
"dev": true,
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"optional": true,
"os": [
"win32"
],
"engines": {
"node": ">=12"
}
},
"node_modules/@esbuild/win32-x64": {
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"version": "0.21.5",
"resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.21.5.tgz",
"integrity": "sha512-tQd/1efJuzPC6rCFwEvLtci/xNFcTZknmXs98FYDfGE4wP9ClFV98nyKrzJKVPMhdDnjzLhdUyMX4PsQAPjwIw==",
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"cpu": [
"x64"
],
"dev": true,
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"optional": true,
"os": [
"win32"
],
"engines": {
"node": ">=12"
}
},
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"node_modules/@nodelib/fs.scandir": {
"version": "2.1.5",
"resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz",
"integrity": "sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==",
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"dependencies": {
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"@nodelib/fs.stat": "2.0.5",
"run-parallel": "^1.1.9"
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
},
"engines": {
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"node": ">= 8"
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
}
},
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"node_modules/@nodelib/fs.stat": {
"version": "2.0.5",
"resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz",
"integrity": "sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==",
"engines": {
"node": ">= 8"
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
}
},
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"node_modules/@nodelib/fs.walk": {
"version": "1.2.8",
"resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz",
"integrity": "sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==",
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"dependencies": {
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"@nodelib/fs.scandir": "2.1.5",
"fastq": "^1.6.0"
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
},
"engines": {
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"node": ">= 8"
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
}
},
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"node_modules/@playwright/test": {
"version": "1.45.2",
"resolved": "https://registry.npmjs.org/@playwright/test/-/test-1.45.2.tgz",
"integrity": "sha512-JxG9eq92ET75EbVi3s+4sYbcG7q72ECeZNbdBlaMkGcNbiDQ4cAi8U2QP5oKkOx+1gpaiL1LDStmzCaEM1Z6fQ==",
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"dev": true,
"dependencies": {
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"playwright": "1.45.2"
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
},
"bin": {
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"playwright": "cli.js"
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
},
"engines": {
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"node": ">=18"
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
}
},
"node_modules/@sindresorhus/merge-streams": {
"version": "2.3.0",
"resolved": "https://registry.npmjs.org/@sindresorhus/merge-streams/-/merge-streams-2.3.0.tgz",
"integrity": "sha512-LtoMMhxAlorcGhmFYI+LhPgbPZCkgP6ra1YL604EeF6U98pLlQ3iWIGMdWSC+vWmPBWBNgmDBAhnAobLROJmwg==",
"engines": {
"node": ">=18"
},
"funding": {
"url": "https://github.com/sponsors/sindresorhus"
}
},
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"node_modules/@types/acorn": {
"version": "4.0.6",
"resolved": "https://registry.npmjs.org/@types/acorn/-/acorn-4.0.6.tgz",
"integrity": "sha512-veQTnWP+1D/xbxVrPC3zHnCZRjSrKfhbMUlEA43iMZLu7EsnTtkJklIuwrCPbOi8YkvDQAiW05VQQFvvz9oieQ==",
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"dependencies": {
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"@types/estree": "*"
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
}
},
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"node_modules/@types/debug": {
"version": "4.1.12",
"resolved": "https://registry.npmjs.org/@types/debug/-/debug-4.1.12.tgz",
"integrity": "sha512-vIChWdVG3LG1SMxEvI/AK+FWJthlrqlTu7fbrlywTkkaONwk/UAGaULXRlf8vkzFBLVm0zkMdCquhL5aOjhXPQ==",
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"dependencies": {
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"@types/ms": "*"
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
}
},
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"node_modules/@types/estree": {
"version": "1.0.5",
"resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.5.tgz",
"integrity": "sha512-/kYRxGDLWzHOB7q+wtSUQlFrtcdUccpfy+X+9iMBpHK8QLLhx2wIPYuS5DYtR9Wa/YlZAbIovy7qVdB1Aq6Lyw=="
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
},
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"node_modules/@types/estree-jsx": {
"version": "1.0.5",
"resolved": "https://registry.npmjs.org/@types/estree-jsx/-/estree-jsx-1.0.5.tgz",
"integrity": "sha512-52CcUVNFyfb1A2ALocQw/Dd1BQFNmSdkuC3BkZ6iqhdMfQz7JWOFRuJFloOzjk+6WijU56m9oKXFAXc7o3Towg==",
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"dependencies": {
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"@types/estree": "*"
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
}
},
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"node_modules/@types/extend": {
"version": "3.0.4",
"resolved": "https://registry.npmjs.org/@types/extend/-/extend-3.0.4.tgz",
"integrity": "sha512-ArMouDUTJEz1SQRpFsT2rIw7DeqICFv5aaVzLSIYMYQSLcwcGOfT3VyglQs/p7K3F7fT4zxr0NWxYZIdifD6dA=="
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
},
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"node_modules/@types/fast-levenshtein": {
"version": "0.0.4",
"resolved": "https://registry.npmjs.org/@types/fast-levenshtein/-/fast-levenshtein-0.0.4.tgz",
"integrity": "sha512-tkDveuitddQCxut1Db8eEFfMahTjOumTJGPHmT9E7KUH+DkVq9WTpVvlfenf3S+uCBeu8j5FP2xik/KfxOEjeA==",
"dev": true
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
},
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"node_modules/@types/fs-extra": {
"version": "11.0.2",
"resolved": "https://registry.npmjs.org/@types/fs-extra/-/fs-extra-11.0.2.tgz",
"integrity": "sha512-c0hrgAOVYr21EX8J0jBMXGLMgJqVf/v6yxi0dLaJboW9aQPh16Id+z6w2Tx1hm+piJOLv8xPfVKZCLfjPw/IMQ==",
"optional": true,
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"dependencies": {
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"@types/jsonfile": "*",
"@types/node": "*"
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
}
},
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"node_modules/@types/hast": {
"version": "2.3.10",
"resolved": "https://registry.npmjs.org/@types/hast/-/hast-2.3.10.tgz",
"integrity": "sha512-McWspRw8xx8J9HurkVBfYj0xKoE25tOFlHGdx4MJ5xORQrMGZNqJhVQWaIbm6Oyla5kYOXtDiopzKRJzEOkwJw==",
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"dependencies": {
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"@types/unist": "^2"
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
}
},
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"node_modules/@types/js-yaml": {
"version": "4.0.9",
"resolved": "https://registry.npmjs.org/@types/js-yaml/-/js-yaml-4.0.9.tgz",
"integrity": "sha512-k4MGaQl5TGo/iipqb2UDG2UwjXziSWkh0uysQelTlJpX1qGlpUZYm8PnO4DxG1qBomtJUdYJ6qR6xdIah10JLg==",
"dev": true
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
},
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"node_modules/@types/jsonfile": {
"version": "6.1.2",
"resolved": "https://registry.npmjs.org/@types/jsonfile/-/jsonfile-6.1.2.tgz",
"integrity": "sha512-8t92P+oeW4d/CRQfJaSqEwXujrhH4OEeHRjGU3v1Q8mUS8GPF3yiX26sw4svv6faL2HfBtGTe2xWIoVgN3dy9w==",
"optional": true,
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"dependencies": {
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"@types/node": "*"
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
}
},
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"node_modules/@types/katex": {
"version": "0.16.7",
"resolved": "https://registry.npmjs.org/@types/katex/-/katex-0.16.7.tgz",
"integrity": "sha512-HMwFiRujE5PjrgwHQ25+bsLJgowjGjm5Z8FVSf0N6PwgJrwxH0QxzHYDcKsTfV3wva0vzrpqMTJS2jXPr5BMEQ=="
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
},
"node_modules/@types/lodash": {
"version": "4.14.199",
"resolved": "https://registry.npmjs.org/@types/lodash/-/lodash-4.14.199.tgz",
"integrity": "sha512-Vrjz5N5Ia4SEzWWgIVwnHNEnb1UE1XMkvY5DGXrAeOGE9imk0hgTHh5GyDjLDJi9OTCn9oo9dXH1uToK1VRfrg==",
"dev": true
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
},
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"node_modules/@types/lodash-es": {
"version": "4.17.12",
"resolved": "https://registry.npmjs.org/@types/lodash-es/-/lodash-es-4.17.12.tgz",
"integrity": "sha512-0NgftHUcV4v34VhXm8QBSftKVXtbkBG3ViCjs6+eJ5a6y6Mi/jiFGPc1sC7QK+9BFhWrURE3EOggmWaSxL9OzQ==",
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"dev": true,
"dependencies": {
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"@types/lodash": "*"
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
}
},
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"node_modules/@types/mdast": {
"version": "3.0.15",
"resolved": "https://registry.npmjs.org/@types/mdast/-/mdast-3.0.15.tgz",
"integrity": "sha512-LnwD+mUEfxWMa1QpDraczIn6k0Ee3SMicuYSSzS6ZYl2gKS09EClnJYGd8Du6rfc5r/GZEk5o1mRb8TaTj03sQ==",
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"dependencies": {
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"@types/unist": "^2"
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
}
},
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"node_modules/@types/ms": {
"version": "0.7.34",
"resolved": "https://registry.npmjs.org/@types/ms/-/ms-0.7.34.tgz",
"integrity": "sha512-nG96G3Wp6acyAgJqGasjODb+acrI7KltPiRxzHPXnP3NgI28bpQDRv53olbqGXbfcgF5aiiHmO3xpwEpS5Ld9g=="
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
},
"node_modules/@types/node": {
"version": "20.7.1",
"resolved": "https://registry.npmjs.org/@types/node/-/node-20.7.1.tgz",
"integrity": "sha512-LT+OIXpp2kj4E2S/p91BMe+VgGX2+lfO+XTpfXhh+bCk2LkQtHZSub8ewFBMGP5ClysPjTDFa4sMI8Q3n4T0wg==",
"devOptional": true
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
},
"node_modules/@types/unist": {
"version": "2.0.10",
"resolved": "https://registry.npmjs.org/@types/unist/-/unist-2.0.10.tgz",
"integrity": "sha512-IfYcSBWE3hLpBg8+X2SEa8LVkJdJEkT2Ese2aaLs3ptGdVtABxndrMaxuFlQ1qdFf9Q5rDvDpxI3WwgvKFAsQA=="
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
},
"node_modules/@types/yargs": {
"version": "17.0.28",
"resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-17.0.28.tgz",
"integrity": "sha512-N3e3fkS86hNhtk6BEnc0rj3zcehaxx8QWhCROJkqpl5Zaoi7nAic3jH8q94jVD3zu5LGk+PUB6KAiDmimYOEQw==",
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"dev": true,
"dependencies": {
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"@types/yargs-parser": "*"
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
}
},
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"node_modules/@types/yargs-parser": {
"version": "21.0.1",
"resolved": "https://registry.npmjs.org/@types/yargs-parser/-/yargs-parser-21.0.1.tgz",
"integrity": "sha512-axdPBuLuEJt0c4yI5OZssC19K2Mq1uKdrfZBzuxLvaztgqUtFYZUNw7lETExPYJR9jdEoIg4mb7RQKRQzOkeGQ==",
"dev": true
},
"node_modules/acorn": {
"version": "8.12.1",
"resolved": "https://registry.npmjs.org/acorn/-/acorn-8.12.1.tgz",
"integrity": "sha512-tcpGyI9zbizT9JbV6oYE477V6mTlXvvi0T0G3SNIYE2apm/G5huBa1+K89VGeovbg+jycCrfhl3ADxErOuO6Jg==",
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"bin": {
"acorn": "bin/acorn"
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
},
"engines": {
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"node": ">=0.4.0"
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
}
},
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"node_modules/acorn-jsx": {
"version": "5.3.2",
"resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.2.tgz",
"integrity": "sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==",
"peerDependencies": {
"acorn": "^6.0.0 || ^7.0.0 || ^8.0.0"
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
}
},
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"node_modules/ansi-regex": {
"version": "6.0.1",
"resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.0.1.tgz",
"integrity": "sha512-n5M855fKb2SsfMIiFFoVrABHJC8QtHwVx+mHWP3QcEqBHYienj5dHSgjbxtC0WEZXYt4wcD6zrQElDPhFuZgfA==",
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"engines": {
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"node": ">=12"
},
"funding": {
"url": "https://github.com/chalk/ansi-regex?sponsor=1"
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
}
},
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"node_modules/ansi-styles": {
"version": "4.3.0",
"resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
"integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"dependencies": {
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"color-convert": "^2.0.1"
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
},
"engines": {
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"node": ">=8"
},
"funding": {
"url": "https://github.com/chalk/ansi-styles?sponsor=1"
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
}
},
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"node_modules/argparse": {
"version": "2.0.1",
"resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz",
"integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q=="
},
"node_modules/array-timsort": {
"version": "1.0.3",
"resolved": "https://registry.npmjs.org/array-timsort/-/array-timsort-1.0.3.tgz",
"integrity": "sha512-/+3GRL7dDAGEfM6TseQk/U+mi18TU2Ms9I3UlLdUMhz2hbvGNTKdj9xniwXfUqgYhHxRx0+8UnKkvlNwVU+cWQ=="
},
"node_modules/bail": {
"version": "2.0.2",
"resolved": "https://registry.npmjs.org/bail/-/bail-2.0.2.tgz",
"integrity": "sha512-0xO6mYd7JB2YesxDKplafRpsiOzPt9V02ddPCLbY1xYGPOX24NTyN50qnUxgCPcSoYMhKpAuBTjQoRZCAkUDRw==",
"funding": {
"type": "github",
"url": "https://github.com/sponsors/wooorm"
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
}
},
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"node_modules/boolbase": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/boolbase/-/boolbase-1.0.0.tgz",
"integrity": "sha512-JZOSA7Mo9sNGB8+UjSgzdLtokWAky1zbztM3WRLCbZ70/3cTANmQmOdR7y2g+J0e2WXywy1yS468tY+IruqEww=="
},
"node_modules/braces": {
"version": "3.0.3",
"resolved": "https://registry.npmjs.org/braces/-/braces-3.0.3.tgz",
"integrity": "sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==",
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"dependencies": {
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"fill-range": "^7.1.1"
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
},
"engines": {
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"node": ">=8"
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
}
},
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"node_modules/callsites": {
"version": "3.1.0",
"resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz",
"integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==",
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"engines": {
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"node": ">=6"
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
}
},
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"node_modules/ccount": {
"version": "2.0.1",
"resolved": "https://registry.npmjs.org/ccount/-/ccount-2.0.1.tgz",
"integrity": "sha512-eyrF0jiFpY+3drT6383f1qhkbGsLSifNAjA61IUjZjmLCWjItY6LB9ft9YhoDgwfmclB2zhu51Lc7+95b8NRAg==",
"funding": {
"type": "github",
"url": "https://github.com/sponsors/wooorm"
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
}
},
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"node_modules/chalk-template": {
"version": "1.1.0",
"resolved": "https://registry.npmjs.org/chalk-template/-/chalk-template-1.1.0.tgz",
"integrity": "sha512-T2VJbcDuZQ0Tb2EWwSotMPJjgpy1/tGee1BTpUNsGZ/qgNjV2t7Mvu+d4600U564nbLesN1x2dPL+xii174Ekg==",
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"dependencies": {
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"chalk": "^5.2.0"
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
},
"engines": {
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"node": ">=14.16"
},
"funding": {
"url": "https://github.com/chalk/chalk-template?sponsor=1"
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
}
},
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"node_modules/chalk-template/node_modules/chalk": {
"version": "5.3.0",
"resolved": "https://registry.npmjs.org/chalk/-/chalk-5.3.0.tgz",
"integrity": "sha512-dLitG79d+GV1Nb/VYcCDFivJeK1hiukt9QjRNVOsUtTy1rR1YJsmpGGTZ3qJos+uw7WmWF4wUwBd9jxjocFC2w==",
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"engines": {
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"node": "^12.17.0 || ^14.13 || >=16.0.0"
},
"funding": {
"url": "https://github.com/chalk/chalk?sponsor=1"
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
}
},
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"node_modules/character-entities": {
"version": "2.0.2",
"resolved": "https://registry.npmjs.org/character-entities/-/character-entities-2.0.2.tgz",
"integrity": "sha512-shx7oQ0Awen/BRIdkjkvz54PnEEI/EjwXDSIZp86/KKdbafHh1Df/RYGBhn4hbe2+uKC9FnT5UCEdyPz3ai9hQ==",
"funding": {
"type": "github",
"url": "https://github.com/sponsors/wooorm"
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
}
},
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"node_modules/character-entities-html4": {
"version": "2.1.0",
"resolved": "https://registry.npmjs.org/character-entities-html4/-/character-entities-html4-2.1.0.tgz",
"integrity": "sha512-1v7fgQRj6hnSwFpq1Eu0ynr/CDEw0rXo2B61qXrLNdHZmPKgb7fqS1a2JwF0rISo9q77jDI8VMEHoApn8qDoZA==",
"funding": {
"type": "github",
"url": "https://github.com/sponsors/wooorm"
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
}
},
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"node_modules/character-entities-legacy": {
"version": "3.0.0",
"resolved": "https://registry.npmjs.org/character-entities-legacy/-/character-entities-legacy-3.0.0.tgz",
"integrity": "sha512-RpPp0asT/6ufRm//AJVwpViZbGM/MkjQFxJccQRHmISF/22NBtsHqAWmL+/pmkPWoIUJdWyeVleTl1wydHATVQ==",
"funding": {
"type": "github",
"url": "https://github.com/sponsors/wooorm"
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
}
},
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"node_modules/character-reference-invalid": {
"version": "2.0.1",
"resolved": "https://registry.npmjs.org/character-reference-invalid/-/character-reference-invalid-2.0.1.tgz",
"integrity": "sha512-iBZ4F4wRbyORVsu0jPV7gXkOsGYjGHPmAyv+HiHG8gi5PtC9KI2j1+v8/tlibRvjoWX027ypmG/n0HtO5t7unw==",
"funding": {
"type": "github",
"url": "https://github.com/sponsors/wooorm"
}
},
"node_modules/cheerio": {
"version": "1.0.0-rc.12",
"resolved": "https://registry.npmjs.org/cheerio/-/cheerio-1.0.0-rc.12.tgz",
"integrity": "sha512-VqR8m68vM46BNnuZ5NtnGBKIE/DfN0cRIzg9n40EIq9NOv90ayxLBXA8fXC5gquFRGJSTRqBq25Jt2ECLR431Q==",
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"dependencies": {
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"cheerio-select": "^2.1.0",
"dom-serializer": "^2.0.0",
"domhandler": "^5.0.3",
"domutils": "^3.0.1",
"htmlparser2": "^8.0.1",
"parse5": "^7.0.0",
"parse5-htmlparser2-tree-adapter": "^7.0.0"
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
},
"engines": {
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"node": ">= 6"
},
"funding": {
"url": "https://github.com/cheeriojs/cheerio?sponsor=1"
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
}
},
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"node_modules/cheerio-select": {
"version": "2.1.0",
"resolved": "https://registry.npmjs.org/cheerio-select/-/cheerio-select-2.1.0.tgz",
"integrity": "sha512-9v9kG0LvzrlcungtnJtpGNxY+fzECQKhK4EGJX2vByejiMX84MFNQw4UxPJl3bFbTMw+Dfs37XaIkCwTZfLh4g==",
"dependencies": {
"boolbase": "^1.0.0",
"css-select": "^5.1.0",
"css-what": "^6.1.0",
"domelementtype": "^2.3.0",
"domhandler": "^5.0.3",
"domutils": "^3.0.1"
},
"funding": {
"url": "https://github.com/sponsors/fb55"
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
}
},
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"node_modules/clear-module": {
"version": "4.1.2",
"resolved": "https://registry.npmjs.org/clear-module/-/clear-module-4.1.2.tgz",
"integrity": "sha512-LWAxzHqdHsAZlPlEyJ2Poz6AIs384mPeqLVCru2p0BrP9G/kVGuhNyZYClLO6cXlnuJjzC8xtsJIuMjKqLXoAw==",
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"dependencies": {
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"parent-module": "^2.0.0",
"resolve-from": "^5.0.0"
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
},
"engines": {
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"node": ">=8"
},
"funding": {
"url": "https://github.com/sponsors/sindresorhus"
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
}
},
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"node_modules/cliui": {
"version": "8.0.1",
"resolved": "https://registry.npmjs.org/cliui/-/cliui-8.0.1.tgz",
"integrity": "sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==",
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"dependencies": {
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"string-width": "^4.2.0",
"strip-ansi": "^6.0.1",
"wrap-ansi": "^7.0.0"
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
},
"engines": {
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"node": ">=12"
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
}
},
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"node_modules/cliui/node_modules/ansi-regex": {
"version": "5.0.1",
"resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz",
"integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==",
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"engines": {
"node": ">=8"
}
},
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"node_modules/cliui/node_modules/strip-ansi": {
"version": "6.0.1",
"resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz",
"integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==",
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"dependencies": {
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"ansi-regex": "^5.0.1"
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
},
"engines": {
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"node": ">=8"
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
}
},
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"node_modules/color-convert": {
"version": "2.0.1",
"resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
"integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"dependencies": {
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"color-name": "~1.1.4"
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
},
"engines": {
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"node": ">=7.0.0"
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
}
},
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"node_modules/color-name": {
"version": "1.1.4",
"resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
"integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA=="
},
"node_modules/comma-separated-tokens": {
"version": "2.0.3",
"resolved": "https://registry.npmjs.org/comma-separated-tokens/-/comma-separated-tokens-2.0.3.tgz",
"integrity": "sha512-Fu4hJdvzeylCfQPp9SGWidpzrMs7tTrlu6Vb8XGaRGck8QSNZJJp538Wrb60Lax4fPwR64ViY468OIUTbRlGZg==",
"funding": {
"type": "github",
"url": "https://github.com/sponsors/wooorm"
}
},
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"node_modules/commander": {
"version": "12.1.0",
"resolved": "https://registry.npmjs.org/commander/-/commander-12.1.0.tgz",
"integrity": "sha512-Vw8qHK3bZM9y/P10u3Vib8o/DdkvA2OtPtZvD871QKjy74Wj1WSKFILMPRPSdUSx5RFK1arlJzEtA4PkFgnbuA==",
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"engines": {
"node": ">=18"
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
}
},
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"node_modules/comment-json": {
"version": "4.2.4",
"resolved": "https://registry.npmjs.org/comment-json/-/comment-json-4.2.4.tgz",
"integrity": "sha512-E5AjpSW+O+N5T2GsOQMHLLsJvrYw6G/AFt9GvU6NguEAfzKShh7hRiLtVo6S9KbRpFMGqE5ojo0/hE+sdteWvQ==",
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"dependencies": {
"array-timsort": "^1.0.3",
"core-util-is": "^1.0.3",
"esprima": "^4.0.1",
"has-own-prop": "^2.0.0",
"repeat-string": "^1.6.1"
},
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"engines": {
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"node": ">= 6"
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
}
},
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"node_modules/core-util-is": {
"version": "1.0.3",
"resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.3.tgz",
"integrity": "sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ=="
},
"node_modules/cspell": {
"version": "8.12.1",
"resolved": "https://registry.npmjs.org/cspell/-/cspell-8.12.1.tgz",
"integrity": "sha512-mdnUUPydxxdj/uyF84U/DvPiY/l58Z2IpNwTx3H9Uve9dfT0vRv/7jiFNAvK4hAfZQaMaE7DPC00ckywTI/XgA==",
"dependencies": {
"@cspell/cspell-json-reporter": "8.12.1",
"@cspell/cspell-pipe": "8.12.1",
"@cspell/cspell-types": "8.12.1",
"@cspell/dynamic-import": "8.12.1",
"@cspell/url": "8.12.1",
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"chalk": "^5.3.0",
"chalk-template": "^1.1.0",
"commander": "^12.1.0",
"cspell-gitignore": "8.12.1",
"cspell-glob": "8.12.1",
"cspell-io": "8.12.1",
"cspell-lib": "8.12.1",
"fast-glob": "^3.3.2",
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"fast-json-stable-stringify": "^2.1.0",
"file-entry-cache": "^9.0.0",
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"get-stdin": "^9.0.0",
"semver": "^7.6.3",
"strip-ansi": "^7.1.0"
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
},
"bin": {
"cspell": "bin.mjs",
"cspell-esm": "bin.mjs"
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
},
"engines": {
"node": ">=18"
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
},
"funding": {
"url": "https://github.com/streetsidesoftware/cspell?sponsor=1"
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
}
},
"node_modules/cspell-config-lib": {
"version": "8.12.1",
"resolved": "https://registry.npmjs.org/cspell-config-lib/-/cspell-config-lib-8.12.1.tgz",
"integrity": "sha512-xEoKdb8hyturyiUXFdRgQotYegYe3OZS+Yc7JHnB75Ykt+Co2gtnu2M/Yb0yoqaHCXflVO6MITrKNaxricgqVw==",
"dependencies": {
"@cspell/cspell-types": "8.12.1",
"comment-json": "^4.2.4",
"yaml": "^2.4.5"
},
"engines": {
"node": ">=18"
}
},
"node_modules/cspell-dictionary": {
"version": "8.12.1",
"resolved": "https://registry.npmjs.org/cspell-dictionary/-/cspell-dictionary-8.12.1.tgz",
"integrity": "sha512-jYHEA48on6pBQYVUEzXV63wy5Ulx/QNUZcoiG3C0OmYIKjACTaEg02AMDOr+Eaj34E5v4pGEShzot4Qtt/aiNQ==",
"dependencies": {
"@cspell/cspell-pipe": "8.12.1",
"@cspell/cspell-types": "8.12.1",
"cspell-trie-lib": "8.12.1",
"fast-equals": "^5.0.1",
"gensequence": "^7.0.0"
},
"engines": {
"node": ">=18"
}
},
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"node_modules/cspell-gitignore": {
"version": "8.12.1",
"resolved": "https://registry.npmjs.org/cspell-gitignore/-/cspell-gitignore-8.12.1.tgz",
"integrity": "sha512-XlO87rdrab3VKU8e7+RGEfqEtYqo7ObgfZeYEAdJlwUXvqYxBzA11jDZAovDz/5jv0YfRMx6ch5t6+1zfSeBbQ==",
"dependencies": {
"@cspell/url": "8.12.1",
"cspell-glob": "8.12.1",
"cspell-io": "8.12.1",
"find-up-simple": "^1.0.0"
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
},
"bin": {
"cspell-gitignore": "bin.mjs"
},
"engines": {
"node": ">=18"
}
},
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"node_modules/cspell-glob": {
"version": "8.12.1",
"resolved": "https://registry.npmjs.org/cspell-glob/-/cspell-glob-8.12.1.tgz",
"integrity": "sha512-ZplEPLlNwj7luEKu/VudIaV+cGTQHExihGvAUxlIVMFURiAFMT5eH0UsQoCEpSevIEueO+slLUDy7rxwTwAGdQ==",
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"dependencies": {
"@cspell/url": "8.12.1",
"micromatch": "^4.0.7"
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
},
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"engines": {
"node": ">=18"
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
}
},
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"node_modules/cspell-grammar": {
"version": "8.12.1",
"resolved": "https://registry.npmjs.org/cspell-grammar/-/cspell-grammar-8.12.1.tgz",
"integrity": "sha512-IAES553M5nuB/wtiWYayDX2/5OmDu2VmEcnV6SXNze8oop0oodSqr3h46rLy+m1EOOD8nenMa295N/dRPqTB/g==",
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"dependencies": {
"@cspell/cspell-pipe": "8.12.1",
"@cspell/cspell-types": "8.12.1"
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
},
"bin": {
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"cspell-grammar": "bin.mjs"
},
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"engines": {
"node": ">=18"
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
}
},
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"node_modules/cspell-io": {
"version": "8.12.1",
"resolved": "https://registry.npmjs.org/cspell-io/-/cspell-io-8.12.1.tgz",
"integrity": "sha512-uPjYQP/OKmA8B1XbJunUTBingtrb6IKkp7enyljsZEbtPRKSudP16QPacgyZLLb5rCVQXyexebGfQ182jmq7dg==",
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"dependencies": {
"@cspell/cspell-service-bus": "8.12.1",
"@cspell/url": "8.12.1"
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
},
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"engines": {
"node": ">=18"
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
}
},
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"node_modules/cspell-lib": {
"version": "8.12.1",
"resolved": "https://registry.npmjs.org/cspell-lib/-/cspell-lib-8.12.1.tgz",
"integrity": "sha512-z2aZXnrip76zbH0j0ibTGux3mA71TMHtoEAd+n66so7Tx3QydUDAI0u7tzfbP3JyqL9ZWPlclQAfbutMUuzMBQ==",
"dependencies": {
"@cspell/cspell-bundled-dicts": "8.12.1",
"@cspell/cspell-pipe": "8.12.1",
"@cspell/cspell-resolver": "8.12.1",
"@cspell/cspell-types": "8.12.1",
"@cspell/dynamic-import": "8.12.1",
"@cspell/strong-weak-map": "8.12.1",
"@cspell/url": "8.12.1",
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"clear-module": "^4.1.2",
"comment-json": "^4.2.4",
"cspell-config-lib": "8.12.1",
"cspell-dictionary": "8.12.1",
"cspell-glob": "8.12.1",
"cspell-grammar": "8.12.1",
"cspell-io": "8.12.1",
"cspell-trie-lib": "8.12.1",
"env-paths": "^3.0.0",
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"fast-equals": "^5.0.1",
"gensequence": "^7.0.0",
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"import-fresh": "^3.3.0",
"resolve-from": "^5.0.0",
"vscode-languageserver-textdocument": "^1.0.11",
"vscode-uri": "^3.0.8",
"xdg-basedir": "^5.1.0"
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
},
"engines": {
"node": ">=18"
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
}
},
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"node_modules/cspell-trie-lib": {
"version": "8.12.1",
"resolved": "https://registry.npmjs.org/cspell-trie-lib/-/cspell-trie-lib-8.12.1.tgz",
"integrity": "sha512-a9QmGGUhparM9v184YsB+D0lSdzVgWDlLFEBjVLQJyvp43HErZjvcTPUojUypNQUEjxvksX0/C4pO5Wq8YUD8w==",
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"dependencies": {
"@cspell/cspell-pipe": "8.12.1",
"@cspell/cspell-types": "8.12.1",
"gensequence": "^7.0.0"
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
},
"engines": {
"node": ">=18"
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
}
},
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"node_modules/cspell/node_modules/chalk": {
"version": "5.3.0",
"resolved": "https://registry.npmjs.org/chalk/-/chalk-5.3.0.tgz",
"integrity": "sha512-dLitG79d+GV1Nb/VYcCDFivJeK1hiukt9QjRNVOsUtTy1rR1YJsmpGGTZ3qJos+uw7WmWF4wUwBd9jxjocFC2w==",
"engines": {
"node": "^12.17.0 || ^14.13 || >=16.0.0"
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
},
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"funding": {
"url": "https://github.com/chalk/chalk?sponsor=1"
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
}
},
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"node_modules/css-select": {
"version": "5.1.0",
"resolved": "https://registry.npmjs.org/css-select/-/css-select-5.1.0.tgz",
"integrity": "sha512-nwoRF1rvRRnnCqqY7updORDsuqKzqYJ28+oSMaJMMgOauh3fvwHqMS7EZpIPqK8GL+g9mKxF1vP/ZjSeNjEVHg==",
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"dependencies": {
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"boolbase": "^1.0.0",
"css-what": "^6.1.0",
"domhandler": "^5.0.2",
"domutils": "^3.0.1",
"nth-check": "^2.0.1"
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
},
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"funding": {
"url": "https://github.com/sponsors/fb55"
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
}
},
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"node_modules/css-what": {
"version": "6.1.0",
"resolved": "https://registry.npmjs.org/css-what/-/css-what-6.1.0.tgz",
"integrity": "sha512-HTUrgRJ7r4dsZKU6GjmpfRK1O76h97Z8MfS1G0FozR+oF2kG6Vfe8JE6zwrkbxigziPHinCJ+gCPjA9EaBDtRw==",
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"engines": {
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"node": ">= 6"
},
"funding": {
"url": "https://github.com/sponsors/fb55"
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
}
},
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"node_modules/debug": {
"version": "4.3.5",
"resolved": "https://registry.npmjs.org/debug/-/debug-4.3.5.tgz",
"integrity": "sha512-pt0bNEmneDIvdL1Xsd9oDQ/wrQRkXDT4AUWlNZNPKvW5x/jyO9VFXkJUP07vQ2upmw5PlaITaPKc31jK13V+jg==",
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"dependencies": {
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"ms": "2.1.2"
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
},
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"engines": {
"node": ">=6.0"
},
"peerDependenciesMeta": {
"supports-color": {
"optional": true
}
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
}
},
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"node_modules/decode-named-character-reference": {
"version": "1.0.2",
"resolved": "https://registry.npmjs.org/decode-named-character-reference/-/decode-named-character-reference-1.0.2.tgz",
"integrity": "sha512-O8x12RzrUF8xyVcY0KJowWsmaJxQbmy0/EtnNtHRpsOcT7dFk5W598coHqBVpmWo1oQQfsCqfCmkZN5DJrZVdg==",
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"dependencies": {
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"character-entities": "^2.0.0"
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
},
"funding": {
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"type": "github",
"url": "https://github.com/sponsors/wooorm"
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
}
},
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"node_modules/dequal": {
"version": "2.0.3",
"resolved": "https://registry.npmjs.org/dequal/-/dequal-2.0.3.tgz",
"integrity": "sha512-0je+qPKHEMohvfRTCEo3CrPG6cAzAYgmzKyxRiYSSDkS6eGJdyVJm7WaYA5ECaAD9wLB2T4EEeymA5aFVcYXCA==",
"engines": {
"node": ">=6"
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
}
},
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"node_modules/diff": {
"version": "5.2.0",
"resolved": "https://registry.npmjs.org/diff/-/diff-5.2.0.tgz",
"integrity": "sha512-uIFDxqpRZGZ6ThOk84hEfqWoHx2devRFvpTZcTHur85vImfaxUbTW9Ryh4CpCuDnToOP1CEtXKIgytHBPVff5A==",
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"engines": {
"node": ">=0.3.1"
}
},
"node_modules/dom-serializer": {
"version": "2.0.0",
"resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-2.0.0.tgz",
"integrity": "sha512-wIkAryiqt/nV5EQKqQpo3SToSOV9J0DnbJqwK7Wv/Trc92zIAYZ4FlMu+JPFW1DfGFt81ZTCGgDEabffXeLyJg==",
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"dependencies": {
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"domelementtype": "^2.3.0",
"domhandler": "^5.0.2",
"entities": "^4.2.0"
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
},
"funding": {
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"url": "https://github.com/cheeriojs/dom-serializer?sponsor=1"
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
}
},
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"node_modules/domelementtype": {
"version": "2.3.0",
"resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-2.3.0.tgz",
"integrity": "sha512-OLETBj6w0OsagBwdXnPdN0cnMfF9opN69co+7ZrbfPGrdpPVNBUj02spi6B1N7wChLQiPn4CSH/zJvXw56gmHw==",
"funding": [
{
"type": "github",
"url": "https://github.com/sponsors/fb55"
}
]
},
"node_modules/domhandler": {
"version": "5.0.3",
"resolved": "https://registry.npmjs.org/domhandler/-/domhandler-5.0.3.tgz",
"integrity": "sha512-cgwlv/1iFQiFnU96XXgROh8xTeetsnJiDsTc7TYCLFd9+/WNkIqPTxiM/8pSd8VIrhXGTf1Ny1q1hquVqDJB5w==",
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"dependencies": {
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"domelementtype": "^2.3.0"
},
"engines": {
"node": ">= 4"
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
},
"funding": {
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"url": "https://github.com/fb55/domhandler?sponsor=1"
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
}
},
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"node_modules/domutils": {
"version": "3.1.0",
"resolved": "https://registry.npmjs.org/domutils/-/domutils-3.1.0.tgz",
"integrity": "sha512-H78uMmQtI2AhgDJjWeQmHwJJ2bLPD3GMmO7Zja/ZZh84wkm+4ut+IUnUdRa8uCGX88DiVx1j6FRe1XfxEgjEZA==",
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"dependencies": {
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"dom-serializer": "^2.0.0",
"domelementtype": "^2.3.0",
"domhandler": "^5.0.3"
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
},
"funding": {
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"url": "https://github.com/fb55/domutils?sponsor=1"
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
}
},
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"node_modules/emoji-regex": {
"version": "8.0.0",
"resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz",
"integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A=="
},
"node_modules/entities": {
"version": "4.5.0",
"resolved": "https://registry.npmjs.org/entities/-/entities-4.5.0.tgz",
"integrity": "sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw==",
"engines": {
"node": ">=0.12"
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
},
"funding": {
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"url": "https://github.com/fb55/entities?sponsor=1"
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
}
},
"node_modules/env-paths": {
"version": "3.0.0",
"resolved": "https://registry.npmjs.org/env-paths/-/env-paths-3.0.0.tgz",
"integrity": "sha512-dtJUTepzMW3Lm/NPxRf3wP4642UWhjL2sQxc+ym2YMj1m/H2zDNQOlezafzkHwn6sMstjHTwG6iQQsctDW/b1A==",
"engines": {
"node": "^12.20.0 || ^14.13.1 || >=16.0.0"
},
"funding": {
"url": "https://github.com/sponsors/sindresorhus"
}
},
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"node_modules/esbuild": {
"version": "0.21.5",
"resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.21.5.tgz",
"integrity": "sha512-mg3OPMV4hXywwpoDxu3Qda5xCKQi+vCTZq8S9J/EpkhB2HzKXq4SNFZE3+NK93JYxc8VMSep+lOUSC/RVKaBqw==",
"dev": true,
"hasInstallScript": true,
"bin": {
"esbuild": "bin/esbuild"
},
"engines": {
"node": ">=12"
},
"optionalDependencies": {
"@esbuild/aix-ppc64": "0.21.5",
"@esbuild/android-arm": "0.21.5",
"@esbuild/android-arm64": "0.21.5",
"@esbuild/android-x64": "0.21.5",
"@esbuild/darwin-arm64": "0.21.5",
"@esbuild/darwin-x64": "0.21.5",
"@esbuild/freebsd-arm64": "0.21.5",
"@esbuild/freebsd-x64": "0.21.5",
"@esbuild/linux-arm": "0.21.5",
"@esbuild/linux-arm64": "0.21.5",
"@esbuild/linux-ia32": "0.21.5",
"@esbuild/linux-loong64": "0.21.5",
"@esbuild/linux-mips64el": "0.21.5",
"@esbuild/linux-ppc64": "0.21.5",
"@esbuild/linux-riscv64": "0.21.5",
"@esbuild/linux-s390x": "0.21.5",
"@esbuild/linux-x64": "0.21.5",
"@esbuild/netbsd-x64": "0.21.5",
"@esbuild/openbsd-x64": "0.21.5",
"@esbuild/sunos-x64": "0.21.5",
"@esbuild/win32-arm64": "0.21.5",
"@esbuild/win32-ia32": "0.21.5",
"@esbuild/win32-x64": "0.21.5"
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
}
},
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"node_modules/escalade": {
"version": "3.1.1",
"resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz",
"integrity": "sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==",
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"engines": {
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"node": ">=6"
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
}
},
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"node_modules/escape-string-regexp": {
"version": "5.0.0",
"resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-5.0.0.tgz",
"integrity": "sha512-/veY75JbMK4j1yjvuUxuVsiS/hr/4iHs9FTT6cgTexxdE0Ly/glccBAkloH/DofkjRbZU3bnoj38mOmhkZ0lHw==",
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"engines": {
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"node": ">=12"
},
"funding": {
"url": "https://github.com/sponsors/sindresorhus"
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
}
},
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"node_modules/esprima": {
"version": "4.0.1",
"resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz",
"integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==",
"bin": {
"esparse": "bin/esparse.js",
"esvalidate": "bin/esvalidate.js"
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
},
"engines": {
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"node": ">=4"
}
},
"node_modules/estree-util-is-identifier-name": {
"version": "2.1.0",
"resolved": "https://registry.npmjs.org/estree-util-is-identifier-name/-/estree-util-is-identifier-name-2.1.0.tgz",
"integrity": "sha512-bEN9VHRyXAUOjkKVQVvArFym08BTWB0aJPppZZr0UNyAqWsLaVfAqP7hbaTJjzHifmB5ebnR8Wm7r7yGN/HonQ==",
"funding": {
"type": "opencollective",
"url": "https://opencollective.com/unified"
}
},
"node_modules/estree-util-visit": {
"version": "1.2.1",
"resolved": "https://registry.npmjs.org/estree-util-visit/-/estree-util-visit-1.2.1.tgz",
"integrity": "sha512-xbgqcrkIVbIG+lI/gzbvd9SGTJL4zqJKBFttUl5pP27KhAjtMKbX/mQXJ7qgyXpMgVy/zvpm0xoQQaGL8OloOw==",
"dependencies": {
"@types/estree-jsx": "^1.0.0",
"@types/unist": "^2.0.0"
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
},
"funding": {
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"type": "opencollective",
"url": "https://opencollective.com/unified"
}
},
"node_modules/extend": {
"version": "3.0.2",
"resolved": "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz",
"integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g=="
},
"node_modules/extend-shallow": {
"version": "2.0.1",
"resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz",
"integrity": "sha512-zCnTtlxNoAiDc3gqY2aYAWFx7XWWiasuF2K8Me5WbN8otHKTUKBwjPtNpRs/rbUZm7KxWAaNj7P1a/p52GbVug==",
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"dependencies": {
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"is-extendable": "^0.1.0"
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
},
"engines": {
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"node": ">=0.10.0"
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
}
},
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"node_modules/fast-equals": {
"version": "5.0.1",
"resolved": "https://registry.npmjs.org/fast-equals/-/fast-equals-5.0.1.tgz",
"integrity": "sha512-WF1Wi8PwwSY7/6Kx0vKXtw8RwuSGoM1bvDaJbu7MxDlR1vovZjIAKrnzyrThgAjm6JDTu0fVgWXDlMGspodfoQ==",
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"engines": {
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"node": ">=6.0.0"
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
}
},
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"node_modules/fast-glob": {
"version": "3.3.2",
"resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.3.2.tgz",
"integrity": "sha512-oX2ruAFQwf/Orj8m737Y5adxDQO0LAB7/S5MnxCdTNDd4p6BsyIVsv9JQsATbTSq8KHRpLwIHbVlUNatxd+1Ow==",
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"dependencies": {
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"@nodelib/fs.stat": "^2.0.2",
"@nodelib/fs.walk": "^1.2.3",
"glob-parent": "^5.1.2",
"merge2": "^1.3.0",
"micromatch": "^4.0.4"
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
},
"engines": {
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"node": ">=8.6.0"
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
}
},
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"node_modules/fast-json-stable-stringify": {
"version": "2.1.0",
"resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz",
"integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw=="
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
},
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"node_modules/fast-levenshtein": {
"version": "3.0.0",
"resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-3.0.0.tgz",
"integrity": "sha512-hKKNajm46uNmTlhHSyZkmToAc56uZJwYq7yrciZjqOxnlfQwERDQJmHPUp7m1m9wx8vgOe8IaCKZ5Kv2k1DdCQ==",
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"dependencies": {
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"fastest-levenshtein": "^1.0.7"
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
}
},
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"node_modules/fastest-levenshtein": {
"version": "1.0.16",
"resolved": "https://registry.npmjs.org/fastest-levenshtein/-/fastest-levenshtein-1.0.16.tgz",
"integrity": "sha512-eRnCtTTtGZFpQCwhJiUOuxPQWRXVKYDn0b2PeHfXL6/Zi53SLAzAHfVhVWK2AryC/WH05kGfxhFIPvTF0SXQzg==",
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"engines": {
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"node": ">= 4.9.1"
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
}
},
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"node_modules/fastq": {
"version": "1.15.0",
"resolved": "https://registry.npmjs.org/fastq/-/fastq-1.15.0.tgz",
"integrity": "sha512-wBrocU2LCXXa+lWBt8RoIRD89Fi8OdABODa/kEnyeyjS5aZO5/GNvI5sEINADqP/h8M29UHTHUb53sUu5Ihqdw==",
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"dependencies": {
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"reusify": "^1.0.4"
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
}
},
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"node_modules/file-entry-cache": {
"version": "9.0.0",
"resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-9.0.0.tgz",
"integrity": "sha512-6MgEugi8p2tiUhqO7GnPsmbCCzj0YRCwwaTbpGRyKZesjRSzkqkAE9fPp7V2yMs5hwfgbQLgdvSSkGNg1s5Uvw==",
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"dependencies": {
"flat-cache": "^5.0.0"
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
},
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"engines": {
"node": ">=18"
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
}
},
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"node_modules/fill-range": {
"version": "7.1.1",
"resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.1.1.tgz",
"integrity": "sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==",
"dependencies": {
"to-regex-range": "^5.0.1"
},
"engines": {
"node": ">=8"
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
}
},
"node_modules/find-up-simple": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/find-up-simple/-/find-up-simple-1.0.0.tgz",
"integrity": "sha512-q7Us7kcjj2VMePAa02hDAF6d+MzsdsAWEwYyOpwUtlerRBkOEPBCRZrAV4XfcSN8fHAgaD0hP7miwoay6DCprw==",
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"engines": {
"node": ">=18"
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
},
"funding": {
"url": "https://github.com/sponsors/sindresorhus"
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
}
},
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"node_modules/flat-cache": {
"version": "5.0.0",
"resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-5.0.0.tgz",
"integrity": "sha512-JrqFmyUl2PnPi1OvLyTVHnQvwQ0S+e6lGSwu8OkAZlSaNIZciTY2H/cOOROxsBA1m/LZNHDsqAgDZt6akWcjsQ==",
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"dependencies": {
"flatted": "^3.3.1",
"keyv": "^4.5.4"
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
},
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"engines": {
"node": ">=18"
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
}
},
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"node_modules/flatted": {
"version": "3.3.1",
"resolved": "https://registry.npmjs.org/flatted/-/flatted-3.3.1.tgz",
"integrity": "sha512-X8cqMLLie7KsNUDSdzeN8FYK9rEt4Dt67OsG/DNGnYTSDBG4uFAJFBnUeiV+zCVAvwFy56IjM9sH51jVaEhNxw=="
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
},
"node_modules/fsevents": {
"version": "2.3.3",
"resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.3.tgz",
"integrity": "sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==",
"dev": true,
"hasInstallScript": true,
"optional": true,
"os": [
"darwin"
],
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"engines": {
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"node": "^8.16.0 || ^10.6.0 || >=11.0.0"
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
}
},
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"node_modules/gensequence": {
"version": "7.0.0",
"resolved": "https://registry.npmjs.org/gensequence/-/gensequence-7.0.0.tgz",
"integrity": "sha512-47Frx13aZh01afHJTB3zTtKIlFI6vWY+MYCN9Qpew6i52rfKjnhCF/l1YlC8UmEMvvntZZ6z4PiCcmyuedR2aQ==",
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"engines": {
"node": ">=18"
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
}
},
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"node_modules/get-caller-file": {
"version": "2.0.5",
"resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz",
"integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==",
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"engines": {
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"node": "6.* || 8.* || >= 10.*"
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
}
},
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"node_modules/get-stdin": {
"version": "9.0.0",
"resolved": "https://registry.npmjs.org/get-stdin/-/get-stdin-9.0.0.tgz",
"integrity": "sha512-dVKBjfWisLAicarI2Sf+JuBE/DghV4UzNAVe9yhEJuzeREd3JhOTE9cUaJTeSa77fsbQUK3pcOpJfM59+VKZaA==",
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"engines": {
"node": ">=12"
},
"funding": {
"url": "https://github.com/sponsors/sindresorhus"
}
},
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"node_modules/get-tsconfig": {
"version": "4.7.6",
"resolved": "https://registry.npmjs.org/get-tsconfig/-/get-tsconfig-4.7.6.tgz",
"integrity": "sha512-ZAqrLlu18NbDdRaHq+AKXzAmqIUPswPWKUchfytdAjiRFnCe5ojG2bstg6mRiZabkKfCoL/e98pbBELIV/YCeA==",
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"dev": true,
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"dependencies": {
"resolve-pkg-maps": "^1.0.0"
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
},
"funding": {
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"url": "https://github.com/privatenumber/get-tsconfig?sponsor=1"
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
}
},
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"node_modules/github-slugger": {
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"version": "2.0.0",
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"resolved": "https://registry.npmjs.org/github-slugger/-/github-slugger-2.0.0.tgz",
"integrity": "sha512-IaOQ9puYtjrkq7Y0Ygl9KDZnrf/aiUJYUpVf89y8kyaxbRG7Y1SrX/jaumrv81vc61+kiMempujsM3Yw7w5qcw=="
},
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"node_modules/glob-parent": {
"version": "5.1.2",
"resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz",
"integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==",
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"dependencies": {
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"is-glob": "^4.0.1"
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
},
"engines": {
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"node": ">= 6"
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
}
},
"node_modules/global-directory": {
"version": "4.0.1",
"resolved": "https://registry.npmjs.org/global-directory/-/global-directory-4.0.1.tgz",
"integrity": "sha512-wHTUcDUoZ1H5/0iVqEudYW4/kAlN5cZ3j/bXn0Dpbizl9iaUVeWSHqiOjsgk6OW2bkLclbBjzewBz6weQ1zA2Q==",
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"dependencies": {
"ini": "4.1.1"
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
},
"engines": {
"node": ">=18"
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
},
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"funding": {
"url": "https://github.com/sponsors/sindresorhus"
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
}
},
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"node_modules/globby": {
"version": "14.0.2",
"resolved": "https://registry.npmjs.org/globby/-/globby-14.0.2.tgz",
"integrity": "sha512-s3Fq41ZVh7vbbe2PN3nrW7yC7U7MFVc5c98/iTl9c2GawNMKx/J648KQRW6WKkuU8GIbbh2IXfIRQjOZnXcTnw==",
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"dependencies": {
"@sindresorhus/merge-streams": "^2.1.0",
"fast-glob": "^3.3.2",
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"ignore": "^5.2.4",
"path-type": "^5.0.0",
"slash": "^5.1.0",
"unicorn-magic": "^0.1.0"
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
},
"engines": {
"node": ">=18"
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
},
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"funding": {
"url": "https://github.com/sponsors/sindresorhus"
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
}
},
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"node_modules/gray-matter": {
"version": "4.0.3",
"resolved": "https://registry.npmjs.org/gray-matter/-/gray-matter-4.0.3.tgz",
"integrity": "sha512-5v6yZd4JK3eMI3FqqCouswVqwugaA9r4dNZB1wwcmrD02QkV5H0y7XBQW8QwQqEaZY1pM9aqORSORhJRdNK44Q==",
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"dependencies": {
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"js-yaml": "^3.13.1",
"kind-of": "^6.0.2",
"section-matter": "^1.0.0",
"strip-bom-string": "^1.0.0"
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
},
"engines": {
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"node": ">=6.0"
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
}
},
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"node_modules/gray-matter/node_modules/argparse": {
"version": "1.0.10",
"resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz",
"integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==",
"dependencies": {
"sprintf-js": "~1.0.2"
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
}
},
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"node_modules/gray-matter/node_modules/js-yaml": {
"version": "3.14.1",
"resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz",
"integrity": "sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==",
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"dependencies": {
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"argparse": "^1.0.7",
"esprima": "^4.0.0"
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
},
"bin": {
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"js-yaml": "bin/js-yaml.js"
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
}
},
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"node_modules/has-own-prop": {
"version": "2.0.0",
"resolved": "https://registry.npmjs.org/has-own-prop/-/has-own-prop-2.0.0.tgz",
"integrity": "sha512-Pq0h+hvsVm6dDEa8x82GnLSYHOzNDt7f0ddFa3FqcQlgzEiptPqL+XrOJNavjOzSYiYWIrgeVYYgGlLmnxwilQ==",
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"engines": {
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"node": ">=8"
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
}
},
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"node_modules/hast-util-embedded": {
"version": "2.0.1",
"resolved": "https://registry.npmjs.org/hast-util-embedded/-/hast-util-embedded-2.0.1.tgz",
"integrity": "sha512-QUdSOP1/o+/TxXtpPFXR2mUg2P+ySrmlX7QjwHZCXqMFyYk7YmcGSvqRW+4XgXAoHifdE1t2PwFaQK33TqVjSw==",
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"dependencies": {
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"hast-util-is-element": "^2.0.0"
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
},
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"funding": {
"type": "opencollective",
"url": "https://opencollective.com/unified"
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
}
},
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"node_modules/hast-util-from-parse5": {
"version": "7.1.2",
"resolved": "https://registry.npmjs.org/hast-util-from-parse5/-/hast-util-from-parse5-7.1.2.tgz",
"integrity": "sha512-Nz7FfPBuljzsN3tCQ4kCBKqdNhQE2l0Tn+X1ubgKBPRoiDIu1mL08Cfw4k7q71+Duyaw7DXDN+VTAp4Vh3oCOw==",
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"dependencies": {
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"@types/hast": "^2.0.0",
"@types/unist": "^2.0.0",
"hastscript": "^7.0.0",
"property-information": "^6.0.0",
"vfile": "^5.0.0",
"vfile-location": "^4.0.0",
"web-namespaces": "^2.0.0"
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
},
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"funding": {
"type": "opencollective",
"url": "https://opencollective.com/unified"
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
}
},
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"node_modules/hast-util-has-property": {
"version": "2.0.1",
"resolved": "https://registry.npmjs.org/hast-util-has-property/-/hast-util-has-property-2.0.1.tgz",
"integrity": "sha512-X2+RwZIMTMKpXUzlotatPzWj8bspCymtXH3cfG3iQKV+wPF53Vgaqxi/eLqGck0wKq1kS9nvoB1wchbCPEL8sg==",
"funding": {
"type": "opencollective",
"url": "https://opencollective.com/unified"
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
}
},
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"node_modules/hast-util-is-body-ok-link": {
"version": "2.0.0",
"resolved": "https://registry.npmjs.org/hast-util-is-body-ok-link/-/hast-util-is-body-ok-link-2.0.0.tgz",
"integrity": "sha512-S58hCexyKdD31vMsErvgLfflW6vYWo/ixRLPJTtkOvLld24vyI8vmYmkgLA5LG3la2ME7nm7dLGdm48gfLRBfw==",
"dependencies": {
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"@types/hast": "^2.0.0",
"hast-util-has-property": "^2.0.0",
"hast-util-is-element": "^2.0.0"
},
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"funding": {
"type": "opencollective",
"url": "https://opencollective.com/unified"
}
},
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"node_modules/hast-util-is-element": {
"version": "2.1.3",
"resolved": "https://registry.npmjs.org/hast-util-is-element/-/hast-util-is-element-2.1.3.tgz",
"integrity": "sha512-O1bKah6mhgEq2WtVMk+Ta5K7pPMqsBBlmzysLdcwKVrqzZQ0CHqUPiIVspNhAG1rvxpvJjtGee17XfauZYKqVA==",
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"dependencies": {
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"@types/hast": "^2.0.0",
"@types/unist": "^2.0.0"
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
},
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"funding": {
"type": "opencollective",
"url": "https://opencollective.com/unified"
}
},
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"node_modules/hast-util-parse-selector": {
"version": "3.1.1",
"resolved": "https://registry.npmjs.org/hast-util-parse-selector/-/hast-util-parse-selector-3.1.1.tgz",
"integrity": "sha512-jdlwBjEexy1oGz0aJ2f4GKMaVKkA9jwjr4MjAAI22E5fM/TXVZHuS5OpONtdeIkRKqAaryQ2E9xNQxijoThSZA==",
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"dependencies": {
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"@types/hast": "^2.0.0"
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
},
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"funding": {
"type": "opencollective",
"url": "https://opencollective.com/unified"
}
},
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"node_modules/hast-util-phrasing": {
"version": "2.0.2",
"resolved": "https://registry.npmjs.org/hast-util-phrasing/-/hast-util-phrasing-2.0.2.tgz",
"integrity": "sha512-yGkCfPkkfCyiLfK6KEl/orMDr/zgCnq/NaO9HfULx6/Zga5fso5eqQA5Ov/JZVqACygvw9shRYWgXNcG2ilo7w==",
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"dependencies": {
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"@types/hast": "^2.0.0",
"hast-util-embedded": "^2.0.0",
"hast-util-has-property": "^2.0.0",
"hast-util-is-body-ok-link": "^2.0.0",
"hast-util-is-element": "^2.0.0"
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
},
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"funding": {
"type": "opencollective",
"url": "https://opencollective.com/unified"
}
},
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"node_modules/hast-util-to-mdast": {
"version": "8.4.1",
"resolved": "https://registry.npmjs.org/hast-util-to-mdast/-/hast-util-to-mdast-8.4.1.tgz",
"integrity": "sha512-tfmBLASuCgyhCzpkTXM5kU8xeuS5jkMZ17BYm2YftGT5wvgc7uHXTZ/X8WfNd6F5NV/IGmrLsuahZ+jXQir4zQ==",
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"dependencies": {
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"@types/extend": "^3.0.0",
"@types/hast": "^2.0.0",
"@types/mdast": "^3.0.0",
"@types/unist": "^2.0.0",
"extend": "^3.0.0",
"hast-util-has-property": "^2.0.0",
"hast-util-is-element": "^2.0.0",
"hast-util-phrasing": "^2.0.0",
"hast-util-to-text": "^3.0.0",
"mdast-util-phrasing": "^3.0.0",
"mdast-util-to-string": "^3.0.0",
"rehype-minify-whitespace": "^5.0.0",
"trim-trailing-lines": "^2.0.0",
"unist-util-is": "^5.0.0",
"unist-util-visit": "^4.0.0"
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
},
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"funding": {
"type": "opencollective",
"url": "https://opencollective.com/unified"
}
},
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"node_modules/hast-util-to-text": {
"version": "3.1.2",
"resolved": "https://registry.npmjs.org/hast-util-to-text/-/hast-util-to-text-3.1.2.tgz",
"integrity": "sha512-tcllLfp23dJJ+ju5wCCZHVpzsQQ43+moJbqVX3jNWPB7z/KFC4FyZD6R7y94cHL6MQ33YtMZL8Z0aIXXI4XFTw==",
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"dependencies": {
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"@types/hast": "^2.0.0",
"@types/unist": "^2.0.0",
"hast-util-is-element": "^2.0.0",
"unist-util-find-after": "^4.0.0"
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
},
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"funding": {
"type": "opencollective",
"url": "https://opencollective.com/unified"
}
},
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"node_modules/hast-util-whitespace": {
"version": "2.0.1",
"resolved": "https://registry.npmjs.org/hast-util-whitespace/-/hast-util-whitespace-2.0.1.tgz",
"integrity": "sha512-nAxA0v8+vXSBDt3AnRUNjyRIQ0rD+ntpbAp4LnPkumc5M9yUbSMa4XDU9Q6etY4f1Wp4bNgvc1yjiZtsTTrSng==",
"funding": {
"type": "opencollective",
"url": "https://opencollective.com/unified"
}
},
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"node_modules/hastscript": {
"version": "7.2.0",
"resolved": "https://registry.npmjs.org/hastscript/-/hastscript-7.2.0.tgz",
"integrity": "sha512-TtYPq24IldU8iKoJQqvZOuhi5CyCQRAbvDOX0x1eW6rsHSxa/1i2CCiptNTotGHJ3VoHRGmqiv6/D3q113ikkw==",
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"dependencies": {
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"@types/hast": "^2.0.0",
"comma-separated-tokens": "^2.0.0",
"hast-util-parse-selector": "^3.0.0",
"property-information": "^6.0.0",
"space-separated-tokens": "^2.0.0"
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
},
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"funding": {
"type": "opencollective",
"url": "https://opencollective.com/unified"
}
},
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"node_modules/html-link-extractor": {
"version": "1.0.5",
"resolved": "https://registry.npmjs.org/html-link-extractor/-/html-link-extractor-1.0.5.tgz",
"integrity": "sha512-ADd49pudM157uWHwHQPUSX4ssMsvR/yHIswOR5CUfBdK9g9ZYGMhVSE6KZVHJ6kCkR0gH4htsfzU6zECDNVwyw==",
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"dependencies": {
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"cheerio": "^1.0.0-rc.10"
}
},
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"node_modules/htmlparser2": {
"version": "8.0.2",
"resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-8.0.2.tgz",
"integrity": "sha512-GYdjWKDkbRLkZ5geuHs5NY1puJ+PXwP7+fHPRz06Eirsb9ugf6d8kkXav6ADhcODhFFPMIXyxkxSuMf3D6NCFA==",
"funding": [
"https://github.com/fb55/htmlparser2?sponsor=1",
{
"type": "github",
"url": "https://github.com/sponsors/fb55"
}
],
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"dependencies": {
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"domelementtype": "^2.3.0",
"domhandler": "^5.0.3",
"domutils": "^3.0.1",
"entities": "^4.4.0"
}
},
"node_modules/ignore": {
"version": "5.2.4",
"resolved": "https://registry.npmjs.org/ignore/-/ignore-5.2.4.tgz",
"integrity": "sha512-MAb38BcSbH0eHNBxn7ql2NH/kX33OkB3lZ1BNdh7ENeRChHTYsTvWrMubiIAMNS2llXEEgZ1MUOBtXChP3kaFQ==",
"engines": {
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"node": ">= 4"
}
},
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"node_modules/import-fresh": {
"version": "3.3.0",
"resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz",
"integrity": "sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==",
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"dependencies": {
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"parent-module": "^1.0.0",
"resolve-from": "^4.0.0"
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
},
"engines": {
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"node": ">=6"
},
"funding": {
"url": "https://github.com/sponsors/sindresorhus"
}
},
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"node_modules/import-fresh/node_modules/parent-module": {
"version": "1.0.1",
"resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz",
"integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==",
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"dependencies": {
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"callsites": "^3.0.0"
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
},
"engines": {
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"node": ">=6"
}
},
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"node_modules/import-fresh/node_modules/resolve-from": {
"version": "4.0.0",
"resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz",
"integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==",
"engines": {
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"node": ">=4"
}
},
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"node_modules/import-meta-resolve": {
"version": "4.1.0",
"resolved": "https://registry.npmjs.org/import-meta-resolve/-/import-meta-resolve-4.1.0.tgz",
"integrity": "sha512-I6fiaX09Xivtk+THaMfAwnA3MVA5Big1WHF1Dfx9hFuvNIWpXnorlkzhcQf6ehrqQiiZECRt1poOAkPmer3ruw==",
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"funding": {
"type": "github",
"url": "https://github.com/sponsors/wooorm"
}
},
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"node_modules/ini": {
"version": "4.1.1",
"resolved": "https://registry.npmjs.org/ini/-/ini-4.1.1.tgz",
"integrity": "sha512-QQnnxNyfvmHFIsj7gkPcYymR8Jdw/o7mp5ZFihxn6h8Ci6fh3Dx4E1gPjpQEpIuPo9XVNY/ZUwh4BPMjGyL01g==",
"engines": {
"node": "^14.17.0 || ^16.13.0 || >=18.0.0"
}
},
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"node_modules/is-absolute-url": {
"version": "4.0.1",
"resolved": "https://registry.npmjs.org/is-absolute-url/-/is-absolute-url-4.0.1.tgz",
"integrity": "sha512-/51/TKE88Lmm7Gc4/8btclNXWS+g50wXhYJq8HWIBAGUBnoAdRu1aXeh364t/O7wXDAcTJDP8PNuNKWUDWie+A==",
"engines": {
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"node": "^12.20.0 || ^14.13.1 || >=16.0.0"
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
},
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"funding": {
"url": "https://github.com/sponsors/sindresorhus"
}
},
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"node_modules/is-alphabetical": {
"version": "2.0.1",
"resolved": "https://registry.npmjs.org/is-alphabetical/-/is-alphabetical-2.0.1.tgz",
"integrity": "sha512-FWyyY60MeTNyeSRpkM2Iry0G9hpr7/9kD40mD/cGQEuilcZYS4okz8SN2Q6rLCJ8gbCt6fN+rC+6tMGS99LaxQ==",
"funding": {
"type": "github",
"url": "https://github.com/sponsors/wooorm"
}
},
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"node_modules/is-alphanumerical": {
"version": "2.0.1",
"resolved": "https://registry.npmjs.org/is-alphanumerical/-/is-alphanumerical-2.0.1.tgz",
"integrity": "sha512-hmbYhX/9MUMF5uh7tOXyK/n0ZvWpad5caBA17GsC6vyuCqaWliRG5K1qS9inmUhEMaOBIW7/whAnSwveW/LtZw==",
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"dependencies": {
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"is-alphabetical": "^2.0.0",
"is-decimal": "^2.0.0"
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
},
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"funding": {
"type": "github",
"url": "https://github.com/sponsors/wooorm"
}
},
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"node_modules/is-buffer": {
"version": "2.0.5",
"resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-2.0.5.tgz",
"integrity": "sha512-i2R6zNFDwgEHJyQUtJEk0XFi1i0dPFn/oqjK3/vPCcDeJvW5NQ83V8QbicfF1SupOaB0h8ntgBC2YiE7dfyctQ==",
"funding": [
{
"type": "github",
"url": "https://github.com/sponsors/feross"
},
{
"type": "patreon",
"url": "https://www.patreon.com/feross"
},
{
"type": "consulting",
"url": "https://feross.org/support"
}
],
"engines": {
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"node": ">=4"
}
},
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"node_modules/is-decimal": {
"version": "2.0.1",
"resolved": "https://registry.npmjs.org/is-decimal/-/is-decimal-2.0.1.tgz",
"integrity": "sha512-AAB9hiomQs5DXWcRB1rqsxGUstbRroFOPPVAomNk/3XHR5JyEZChOyTWe2oayKnsSsr/kcGqF+z6yuH6HHpN0A==",
"funding": {
"type": "github",
"url": "https://github.com/sponsors/wooorm"
}
},
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"node_modules/is-extendable": {
"version": "0.1.1",
"resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz",
"integrity": "sha512-5BMULNob1vgFX6EjQw5izWDxrecWK9AM72rugNr0TFldMOi0fj6Jk+zeKIt0xGj4cEfQIJth4w3OKWOJ4f+AFw==",
"engines": {
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"node": ">=0.10.0"
}
},
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"node_modules/is-extglob": {
"version": "2.1.1",
"resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz",
"integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==",
"engines": {
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"node": ">=0.10.0"
}
},
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"node_modules/is-fullwidth-code-point": {
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"version": "3.0.0",
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz",
"integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==",
"engines": {
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"node": ">=8"
}
},
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"node_modules/is-glob": {
"version": "4.0.3",
"resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz",
"integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==",
"dependencies": {
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"is-extglob": "^2.1.1"
},
"engines": {
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"node": ">=0.10.0"
}
},
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"node_modules/is-hexadecimal": {
"version": "2.0.1",
"resolved": "https://registry.npmjs.org/is-hexadecimal/-/is-hexadecimal-2.0.1.tgz",
"integrity": "sha512-DgZQp241c8oO6cA1SbTEWiXeoxV42vlcJxgH+B3hi1AiqqKruZR3ZGF8In3fj4+/y/7rHvlOZLZtgJ/4ttYGZg==",
"funding": {
"type": "github",
"url": "https://github.com/sponsors/wooorm"
}
},
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"node_modules/is-number": {
"version": "7.0.0",
"resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz",
"integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==",
"engines": {
"node": ">=0.12.0"
}
},
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"node_modules/is-plain-obj": {
"version": "4.1.0",
"resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-4.1.0.tgz",
"integrity": "sha512-+Pgi+vMuUNkJyExiMBt5IlFoMyKnr5zhJ4Uspz58WOhBF5QoIZkFyNHIbBAtHwzVAgk5RtndVNsDRN61/mmDqg==",
"engines": {
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"node": ">=12"
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
},
"funding": {
"url": "https://github.com/sponsors/sindresorhus"
}
},
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"node_modules/js-yaml": {
"version": "4.1.0",
"resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz",
"integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==",
"dependencies": {
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"argparse": "^2.0.1"
},
"bin": {
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"js-yaml": "bin/js-yaml.js"
}
},
"node_modules/json-buffer": {
"version": "3.0.1",
"resolved": "https://registry.npmjs.org/json-buffer/-/json-buffer-3.0.1.tgz",
"integrity": "sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ=="
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
},
"node_modules/katex": {
"version": "0.16.11",
"resolved": "https://registry.npmjs.org/katex/-/katex-0.16.11.tgz",
"integrity": "sha512-RQrI8rlHY92OLf3rho/Ts8i/XvjgguEjOkO1BEXcU3N8BqPpSzBNwV/G0Ukr+P/l3ivvJUE/Fa/CwbS6HesGNQ==",
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"funding": [
"https://opencollective.com/katex",
"https://github.com/sponsors/katex"
],
"dependencies": {
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"commander": "^8.3.0"
},
"bin": {
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"katex": "cli.js"
}
},
"node_modules/katex/node_modules/commander": {
"version": "8.3.0",
"resolved": "https://registry.npmjs.org/commander/-/commander-8.3.0.tgz",
"integrity": "sha512-OkTL9umf+He2DZkUq8f8J9of7yL6RJKI24dVITBmNfZBmri9zYZQrKkuXiKhyfPSu8tUhnVBB1iKXevvnlR4Ww==",
"engines": {
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"node": ">= 12"
}
},
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"node_modules/keyv": {
"version": "4.5.4",
"resolved": "https://registry.npmjs.org/keyv/-/keyv-4.5.4.tgz",
"integrity": "sha512-oxVHkHR/EJf2CNXnWxRLW6mg7JyCCUcG0DtEGmL2ctUo1PNTin1PUil+r/+4r5MpVgC/fn1kjsx7mjSujKqIpw==",
"dependencies": {
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"json-buffer": "3.0.1"
}
},
"node_modules/kind-of": {
"version": "6.0.3",
"resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz",
"integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==",
"engines": {
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"node": ">=0.10.0"
}
},
"node_modules/kleur": {
"version": "4.1.5",
"resolved": "https://registry.npmjs.org/kleur/-/kleur-4.1.5.tgz",
"integrity": "sha512-o+NO+8WrRiQEE4/7nwRJhN1HWpVmJm511pBHUxPLtp0BUISzlBplORYSmTclCnJvQq2tKu/sgl3xVpkc7ZWuQQ==",
"engines": {
"node": ">=6"
}
},
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"node_modules/lodash-es": {
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"version": "4.17.21",
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"resolved": "https://registry.npmjs.org/lodash-es/-/lodash-es-4.17.21.tgz",
"integrity": "sha512-mKnC+QJ9pWVzv+C4/U3rRsHapFfHvQFoFB92e52xeyGMcX6/OlIl78je1u8vePzYZSkkogMPJ2yjxxsb89cxyw=="
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
},
"node_modules/longest-streak": {
"version": "3.1.0",
"resolved": "https://registry.npmjs.org/longest-streak/-/longest-streak-3.1.0.tgz",
"integrity": "sha512-9Ri+o0JYgehTaVBBDoMqIl8GXtbWg711O3srftcHhZ0dqnETqLaoIK0x17fUw9rFSlK/0NlsKe0Ahhyl5pXE2g==",
"funding": {
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"type": "github",
"url": "https://github.com/sponsors/wooorm"
}
},
"node_modules/markdown-link-extractor": {
"version": "3.1.0",
"resolved": "https://registry.npmjs.org/markdown-link-extractor/-/markdown-link-extractor-3.1.0.tgz",
"integrity": "sha512-r0NEbP1dsM+IqB62Ru9TXLP/HDaTdBNIeylYXumuBi6Xv4ufjE1/g3TnslYL8VNqNcGAGbMptQFHrrdfoZ/Sug==",
"dependencies": {
"html-link-extractor": "^1.0.5",
"marked": "^4.1.0"
}
},
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"node_modules/markdown-table": {
"version": "3.0.3",
"resolved": "https://registry.npmjs.org/markdown-table/-/markdown-table-3.0.3.tgz",
"integrity": "sha512-Z1NL3Tb1M9wH4XESsCDEksWoKTdlUafKc4pt0GRwjUyXaCFZ+dc3g2erqB6zm3szA2IUSi7VnPI+o/9jnxh9hw==",
"funding": {
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"type": "github",
"url": "https://github.com/sponsors/wooorm"
}
},
"node_modules/marked": {
"version": "4.3.0",
"resolved": "https://registry.npmjs.org/marked/-/marked-4.3.0.tgz",
"integrity": "sha512-PRsaiG84bK+AMvxziE/lCFss8juXjNaWzVbN5tXAm4XjeaS9NAHhop+PjQxz2A9h8Q4M/xGmzP8vqNwy6JeK0A==",
"bin": {
"marked": "bin/marked.js"
},
"engines": {
"node": ">= 12"
}
},
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"node_modules/mdast": {
"version": "3.0.0",
"resolved": "https://registry.npmjs.org/mdast/-/mdast-3.0.0.tgz",
"integrity": "sha512-xySmf8g4fPKMeC07jXGz971EkLbWAJ83s4US2Tj9lEdnZ142UP5grN73H1Xd3HzrdbU5o9GYYP/y8F9ZSwLE9g==",
"deprecated": "`mdast` was renamed to `remark`"
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
},
"node_modules/mdast-util-find-and-replace": {
"version": "2.2.2",
"resolved": "https://registry.npmjs.org/mdast-util-find-and-replace/-/mdast-util-find-and-replace-2.2.2.tgz",
"integrity": "sha512-MTtdFRz/eMDHXzeK6W3dO7mXUlF82Gom4y0oOgvHhh/HXZAGvIQDUvQ0SuUx+j2tv44b8xTHOm8K/9OoRFnXKw==",
"dependencies": {
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"@types/mdast": "^3.0.0",
"escape-string-regexp": "^5.0.0",
"unist-util-is": "^5.0.0",
"unist-util-visit-parents": "^5.0.0"
},
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"funding": {
"type": "opencollective",
"url": "https://opencollective.com/unified"
}
},
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"node_modules/mdast-util-from-markdown": {
"version": "1.3.1",
"resolved": "https://registry.npmjs.org/mdast-util-from-markdown/-/mdast-util-from-markdown-1.3.1.tgz",
"integrity": "sha512-4xTO/M8c82qBcnQc1tgpNtubGUW/Y1tBQ1B0i5CtSoelOLKFYlElIr3bvgREYYO5iRqbMY1YuqZng0GVOI8Qww==",
"dependencies": {
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"@types/mdast": "^3.0.0",
"@types/unist": "^2.0.0",
"decode-named-character-reference": "^1.0.0",
"mdast-util-to-string": "^3.1.0",
"micromark": "^3.0.0",
"micromark-util-decode-numeric-character-reference": "^1.0.0",
"micromark-util-decode-string": "^1.0.0",
"micromark-util-normalize-identifier": "^1.0.0",
"micromark-util-symbol": "^1.0.0",
"micromark-util-types": "^1.0.0",
"unist-util-stringify-position": "^3.0.0",
"uvu": "^0.5.0"
},
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"funding": {
"type": "opencollective",
"url": "https://opencollective.com/unified"
}
},
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"node_modules/mdast-util-gfm": {
"version": "2.0.2",
"resolved": "https://registry.npmjs.org/mdast-util-gfm/-/mdast-util-gfm-2.0.2.tgz",
"integrity": "sha512-qvZ608nBppZ4icQlhQQIAdc6S3Ffj9RGmzwUKUWuEICFnd1LVkN3EktF7ZHAgfcEdvZB5owU9tQgt99e2TlLjg==",
"dependencies": {
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"mdast-util-from-markdown": "^1.0.0",
"mdast-util-gfm-autolink-literal": "^1.0.0",
"mdast-util-gfm-footnote": "^1.0.0",
"mdast-util-gfm-strikethrough": "^1.0.0",
"mdast-util-gfm-table": "^1.0.0",
"mdast-util-gfm-task-list-item": "^1.0.0",
"mdast-util-to-markdown": "^1.0.0"
},
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"funding": {
"type": "opencollective",
"url": "https://opencollective.com/unified"
}
},
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"node_modules/mdast-util-gfm-autolink-literal": {
"version": "1.0.3",
"resolved": "https://registry.npmjs.org/mdast-util-gfm-autolink-literal/-/mdast-util-gfm-autolink-literal-1.0.3.tgz",
"integrity": "sha512-My8KJ57FYEy2W2LyNom4n3E7hKTuQk/0SES0u16tjA9Z3oFkF4RrC/hPAPgjlSpezsOvI8ObcXcElo92wn5IGA==",
"dependencies": {
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"@types/mdast": "^3.0.0",
"ccount": "^2.0.0",
"mdast-util-find-and-replace": "^2.0.0",
"micromark-util-character": "^1.0.0"
},
"funding": {
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"type": "opencollective",
"url": "https://opencollective.com/unified"
}
},
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"node_modules/mdast-util-gfm-footnote": {
"version": "1.0.2",
"resolved": "https://registry.npmjs.org/mdast-util-gfm-footnote/-/mdast-util-gfm-footnote-1.0.2.tgz",
"integrity": "sha512-56D19KOGbE00uKVj3sgIykpwKL179QsVFwx/DCW0u/0+URsryacI4MAdNJl0dh+u2PSsD9FtxPFbHCzJ78qJFQ==",
"dependencies": {
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"@types/mdast": "^3.0.0",
"mdast-util-to-markdown": "^1.3.0",
"micromark-util-normalize-identifier": "^1.0.0"
},
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"funding": {
"type": "opencollective",
"url": "https://opencollective.com/unified"
}
},
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"node_modules/mdast-util-gfm-strikethrough": {
"version": "1.0.3",
"resolved": "https://registry.npmjs.org/mdast-util-gfm-strikethrough/-/mdast-util-gfm-strikethrough-1.0.3.tgz",
"integrity": "sha512-DAPhYzTYrRcXdMjUtUjKvW9z/FNAMTdU0ORyMcbmkwYNbKocDpdk+PX1L1dQgOID/+vVs1uBQ7ElrBQfZ0cuiQ==",
"dependencies": {
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"@types/mdast": "^3.0.0",
"mdast-util-to-markdown": "^1.3.0"
},
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"funding": {
"type": "opencollective",
"url": "https://opencollective.com/unified"
}
},
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"node_modules/mdast-util-gfm-table": {
"version": "1.0.7",
"resolved": "https://registry.npmjs.org/mdast-util-gfm-table/-/mdast-util-gfm-table-1.0.7.tgz",
"integrity": "sha512-jjcpmNnQvrmN5Vx7y7lEc2iIOEytYv7rTvu+MeyAsSHTASGCCRA79Igg2uKssgOs1i1po8s3plW0sTu1wkkLGg==",
"dependencies": {
"@types/mdast": "^3.0.0",
"markdown-table": "^3.0.0",
"mdast-util-from-markdown": "^1.0.0",
"mdast-util-to-markdown": "^1.3.0"
},
"funding": {
"type": "opencollective",
"url": "https://opencollective.com/unified"
}
},
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"node_modules/mdast-util-gfm-task-list-item": {
"version": "1.0.2",
"resolved": "https://registry.npmjs.org/mdast-util-gfm-task-list-item/-/mdast-util-gfm-task-list-item-1.0.2.tgz",
"integrity": "sha512-PFTA1gzfp1B1UaiJVyhJZA1rm0+Tzn690frc/L8vNX1Jop4STZgOE6bxUhnzdVSB+vm2GU1tIsuQcA9bxTQpMQ==",
"dependencies": {
"@types/mdast": "^3.0.0",
"mdast-util-to-markdown": "^1.3.0"
},
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"funding": {
"type": "opencollective",
"url": "https://opencollective.com/unified"
}
},
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"node_modules/mdast-util-math": {
"version": "2.0.2",
"resolved": "https://registry.npmjs.org/mdast-util-math/-/mdast-util-math-2.0.2.tgz",
"integrity": "sha512-8gmkKVp9v6+Tgjtq6SYx9kGPpTf6FVYRa53/DLh479aldR9AyP48qeVOgNZ5X7QUK7nOy4yw7vg6mbiGcs9jWQ==",
"dependencies": {
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"@types/mdast": "^3.0.0",
"longest-streak": "^3.0.0",
"mdast-util-to-markdown": "^1.3.0"
},
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"funding": {
"type": "opencollective",
"url": "https://opencollective.com/unified"
}
},
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"node_modules/mdast-util-mdx": {
"version": "2.0.1",
"resolved": "https://registry.npmjs.org/mdast-util-mdx/-/mdast-util-mdx-2.0.1.tgz",
"integrity": "sha512-38w5y+r8nyKlGvNjSEqWrhG0w5PmnRA+wnBvm+ulYCct7nsGYhFVb0lljS9bQav4psDAS1eGkP2LMVcZBi/aqw==",
"dependencies": {
"mdast-util-from-markdown": "^1.0.0",
"mdast-util-mdx-expression": "^1.0.0",
"mdast-util-mdx-jsx": "^2.0.0",
"mdast-util-mdxjs-esm": "^1.0.0",
"mdast-util-to-markdown": "^1.0.0"
},
"funding": {
"type": "opencollective",
"url": "https://opencollective.com/unified"
}
},
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"node_modules/mdast-util-mdx-expression": {
"version": "1.3.2",
"resolved": "https://registry.npmjs.org/mdast-util-mdx-expression/-/mdast-util-mdx-expression-1.3.2.tgz",
"integrity": "sha512-xIPmR5ReJDu/DHH1OoIT1HkuybIfRGYRywC+gJtI7qHjCJp/M9jrmBEJW22O8lskDWm562BX2W8TiAwRTb0rKA==",
"dependencies": {
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"@types/estree-jsx": "^1.0.0",
"@types/hast": "^2.0.0",
"@types/mdast": "^3.0.0",
"mdast-util-from-markdown": "^1.0.0",
"mdast-util-to-markdown": "^1.0.0"
},
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"funding": {
"type": "opencollective",
"url": "https://opencollective.com/unified"
}
},
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"node_modules/mdast-util-mdx-jsx": {
"version": "2.1.4",
"resolved": "https://registry.npmjs.org/mdast-util-mdx-jsx/-/mdast-util-mdx-jsx-2.1.4.tgz",
"integrity": "sha512-DtMn9CmVhVzZx3f+optVDF8yFgQVt7FghCRNdlIaS3X5Bnym3hZwPbg/XW86vdpKjlc1PVj26SpnLGeJBXD3JA==",
"dependencies": {
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"@types/estree-jsx": "^1.0.0",
"@types/hast": "^2.0.0",
"@types/mdast": "^3.0.0",
"@types/unist": "^2.0.0",
"ccount": "^2.0.0",
"mdast-util-from-markdown": "^1.1.0",
"mdast-util-to-markdown": "^1.3.0",
"parse-entities": "^4.0.0",
"stringify-entities": "^4.0.0",
"unist-util-remove-position": "^4.0.0",
"unist-util-stringify-position": "^3.0.0",
"vfile-message": "^3.0.0"
},
"funding": {
"type": "opencollective",
"url": "https://opencollective.com/unified"
}
},
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"node_modules/mdast-util-mdxjs-esm": {
"version": "1.3.1",
"resolved": "https://registry.npmjs.org/mdast-util-mdxjs-esm/-/mdast-util-mdxjs-esm-1.3.1.tgz",
"integrity": "sha512-SXqglS0HrEvSdUEfoXFtcg7DRl7S2cwOXc7jkuusG472Mmjag34DUDeOJUZtl+BVnyeO1frIgVpHlNRWc2gk/w==",
"dependencies": {
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"@types/estree-jsx": "^1.0.0",
"@types/hast": "^2.0.0",
"@types/mdast": "^3.0.0",
"mdast-util-from-markdown": "^1.0.0",
"mdast-util-to-markdown": "^1.0.0"
},
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"funding": {
"type": "opencollective",
"url": "https://opencollective.com/unified"
}
},
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"node_modules/mdast-util-phrasing": {
"version": "3.0.1",
"resolved": "https://registry.npmjs.org/mdast-util-phrasing/-/mdast-util-phrasing-3.0.1.tgz",
"integrity": "sha512-WmI1gTXUBJo4/ZmSk79Wcb2HcjPJBzM1nlI/OUWA8yk2X9ik3ffNbBGsU+09BFmXaL1IBb9fiuvq6/KMiNycSg==",
"dependencies": {
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"@types/mdast": "^3.0.0",
"unist-util-is": "^5.0.0"
},
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"funding": {
"type": "opencollective",
"url": "https://opencollective.com/unified"
}
},
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"node_modules/mdast-util-to-markdown": {
"version": "1.5.0",
"resolved": "https://registry.npmjs.org/mdast-util-to-markdown/-/mdast-util-to-markdown-1.5.0.tgz",
"integrity": "sha512-bbv7TPv/WC49thZPg3jXuqzuvI45IL2EVAr/KxF0BSdHsU0ceFHOmwQn6evxAh1GaoK/6GQ1wp4R4oW2+LFL/A==",
"dependencies": {
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"@types/mdast": "^3.0.0",
"@types/unist": "^2.0.0",
"longest-streak": "^3.0.0",
"mdast-util-phrasing": "^3.0.0",
"mdast-util-to-string": "^3.0.0",
"micromark-util-decode-string": "^1.0.0",
"unist-util-visit": "^4.0.0",
"zwitch": "^2.0.0"
},
"funding": {
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"type": "opencollective",
"url": "https://opencollective.com/unified"
}
},
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"node_modules/mdast-util-to-string": {
"version": "3.2.0",
"resolved": "https://registry.npmjs.org/mdast-util-to-string/-/mdast-util-to-string-3.2.0.tgz",
"integrity": "sha512-V4Zn/ncyN1QNSqSBxTrMOLpjr+IKdHl2v3KVLoWmDPscP4r9GcCi71gjgvUV1SFSKh92AjAG4peFuBl2/YgCJg==",
"dependencies": {
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"@types/mdast": "^3.0.0"
},
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"funding": {
"type": "opencollective",
"url": "https://opencollective.com/unified"
}
},
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"node_modules/merge2": {
"version": "1.4.1",
"resolved": "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz",
"integrity": "sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==",
"engines": {
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"node": ">= 8"
}
},
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"node_modules/micromark": {
"version": "3.2.0",
"resolved": "https://registry.npmjs.org/micromark/-/micromark-3.2.0.tgz",
"integrity": "sha512-uD66tJj54JLYq0De10AhWycZWGQNUvDI55xPgk2sQM5kn1JYlhbCMTtEeT27+vAhW2FBQxLlOmS3pmA7/2z4aA==",
"funding": [
{
"type": "GitHub Sponsors",
"url": "https://github.com/sponsors/unifiedjs"
},
{
"type": "OpenCollective",
"url": "https://opencollective.com/unified"
}
],
"dependencies": {
"@types/debug": "^4.0.0",
"debug": "^4.0.0",
"decode-named-character-reference": "^1.0.0",
"micromark-core-commonmark": "^1.0.1",
"micromark-factory-space": "^1.0.0",
"micromark-util-character": "^1.0.0",
"micromark-util-chunked": "^1.0.0",
"micromark-util-combine-extensions": "^1.0.0",
"micromark-util-decode-numeric-character-reference": "^1.0.0",
"micromark-util-encode": "^1.0.0",
"micromark-util-normalize-identifier": "^1.0.0",
"micromark-util-resolve-all": "^1.0.0",
"micromark-util-sanitize-uri": "^1.0.0",
"micromark-util-subtokenize": "^1.0.0",
"micromark-util-symbol": "^1.0.0",
"micromark-util-types": "^1.0.1",
"uvu": "^0.5.0"
}
},
"node_modules/micromark-core-commonmark": {
"version": "1.1.0",
"resolved": "https://registry.npmjs.org/micromark-core-commonmark/-/micromark-core-commonmark-1.1.0.tgz",
"integrity": "sha512-BgHO1aRbolh2hcrzL2d1La37V0Aoz73ymF8rAcKnohLy93titmv62E0gP8Hrx9PKcKrqCZ1BbLGbP3bEhoXYlw==",
"funding": [
{
"type": "GitHub Sponsors",
"url": "https://github.com/sponsors/unifiedjs"
},
{
"type": "OpenCollective",
"url": "https://opencollective.com/unified"
}
],
"dependencies": {
"decode-named-character-reference": "^1.0.0",
"micromark-factory-destination": "^1.0.0",
"micromark-factory-label": "^1.0.0",
"micromark-factory-space": "^1.0.0",
"micromark-factory-title": "^1.0.0",
"micromark-factory-whitespace": "^1.0.0",
"micromark-util-character": "^1.0.0",
"micromark-util-chunked": "^1.0.0",
"micromark-util-classify-character": "^1.0.0",
"micromark-util-html-tag-name": "^1.0.0",
"micromark-util-normalize-identifier": "^1.0.0",
"micromark-util-resolve-all": "^1.0.0",
"micromark-util-subtokenize": "^1.0.0",
"micromark-util-symbol": "^1.0.0",
"micromark-util-types": "^1.0.1",
"uvu": "^0.5.0"
}
},
"node_modules/micromark-extension-gfm": {
"version": "2.0.3",
"resolved": "https://registry.npmjs.org/micromark-extension-gfm/-/micromark-extension-gfm-2.0.3.tgz",
"integrity": "sha512-vb9OoHqrhCmbRidQv/2+Bc6pkP0FrtlhurxZofvOEy5o8RtuuvTq+RQ1Vw5ZDNrVraQZu3HixESqbG+0iKk/MQ==",
"dependencies": {
"micromark-extension-gfm-autolink-literal": "^1.0.0",
"micromark-extension-gfm-footnote": "^1.0.0",
"micromark-extension-gfm-strikethrough": "^1.0.0",
"micromark-extension-gfm-table": "^1.0.0",
"micromark-extension-gfm-tagfilter": "^1.0.0",
"micromark-extension-gfm-task-list-item": "^1.0.0",
"micromark-util-combine-extensions": "^1.0.0",
"micromark-util-types": "^1.0.0"
},
"funding": {
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"type": "opencollective",
"url": "https://opencollective.com/unified"
}
},
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"node_modules/micromark-extension-gfm-autolink-literal": {
"version": "1.0.5",
"resolved": "https://registry.npmjs.org/micromark-extension-gfm-autolink-literal/-/micromark-extension-gfm-autolink-literal-1.0.5.tgz",
"integrity": "sha512-z3wJSLrDf8kRDOh2qBtoTRD53vJ+CWIyo7uyZuxf/JAbNJjiHsOpG1y5wxk8drtv3ETAHutCu6N3thkOOgueWg==",
"dependencies": {
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"micromark-util-character": "^1.0.0",
"micromark-util-sanitize-uri": "^1.0.0",
"micromark-util-symbol": "^1.0.0",
"micromark-util-types": "^1.0.0"
},
"funding": {
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"type": "opencollective",
"url": "https://opencollective.com/unified"
}
},
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"node_modules/micromark-extension-gfm-footnote": {
"version": "1.1.2",
"resolved": "https://registry.npmjs.org/micromark-extension-gfm-footnote/-/micromark-extension-gfm-footnote-1.1.2.tgz",
"integrity": "sha512-Yxn7z7SxgyGWRNa4wzf8AhYYWNrwl5q1Z8ii+CSTTIqVkmGZF1CElX2JI8g5yGoM3GAman9/PVCUFUSJ0kB/8Q==",
"dependencies": {
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"micromark-core-commonmark": "^1.0.0",
"micromark-factory-space": "^1.0.0",
"micromark-util-character": "^1.0.0",
"micromark-util-normalize-identifier": "^1.0.0",
"micromark-util-sanitize-uri": "^1.0.0",
"micromark-util-symbol": "^1.0.0",
"micromark-util-types": "^1.0.0",
"uvu": "^0.5.0"
},
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"funding": {
"type": "opencollective",
"url": "https://opencollective.com/unified"
}
},
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"node_modules/micromark-extension-gfm-strikethrough": {
"version": "1.0.7",
"resolved": "https://registry.npmjs.org/micromark-extension-gfm-strikethrough/-/micromark-extension-gfm-strikethrough-1.0.7.tgz",
"integrity": "sha512-sX0FawVE1o3abGk3vRjOH50L5TTLr3b5XMqnP9YDRb34M0v5OoZhG+OHFz1OffZ9dlwgpTBKaT4XW/AsUVnSDw==",
"dependencies": {
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"micromark-util-chunked": "^1.0.0",
"micromark-util-classify-character": "^1.0.0",
"micromark-util-resolve-all": "^1.0.0",
"micromark-util-symbol": "^1.0.0",
"micromark-util-types": "^1.0.0",
"uvu": "^0.5.0"
},
"funding": {
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"type": "opencollective",
"url": "https://opencollective.com/unified"
}
},
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"node_modules/micromark-extension-gfm-table": {
"version": "1.0.7",
"resolved": "https://registry.npmjs.org/micromark-extension-gfm-table/-/micromark-extension-gfm-table-1.0.7.tgz",
"integrity": "sha512-3ZORTHtcSnMQEKtAOsBQ9/oHp9096pI/UvdPtN7ehKvrmZZ2+bbWhi0ln+I9drmwXMt5boocn6OlwQzNXeVeqw==",
"dependencies": {
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"micromark-factory-space": "^1.0.0",
"micromark-util-character": "^1.0.0",
"micromark-util-symbol": "^1.0.0",
"micromark-util-types": "^1.0.0",
"uvu": "^0.5.0"
},
"funding": {
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"type": "opencollective",
"url": "https://opencollective.com/unified"
}
},
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"node_modules/micromark-extension-gfm-tagfilter": {
"version": "1.0.2",
"resolved": "https://registry.npmjs.org/micromark-extension-gfm-tagfilter/-/micromark-extension-gfm-tagfilter-1.0.2.tgz",
"integrity": "sha512-5XWB9GbAUSHTn8VPU8/1DBXMuKYT5uOgEjJb8gN3mW0PNW5OPHpSdojoqf+iq1xo7vWzw/P8bAHY0n6ijpXF7g==",
"dependencies": {
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"micromark-util-types": "^1.0.0"
},
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"funding": {
"type": "opencollective",
"url": "https://opencollective.com/unified"
}
},
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"node_modules/micromark-extension-gfm-task-list-item": {
"version": "1.0.5",
"resolved": "https://registry.npmjs.org/micromark-extension-gfm-task-list-item/-/micromark-extension-gfm-task-list-item-1.0.5.tgz",
"integrity": "sha512-RMFXl2uQ0pNQy6Lun2YBYT9g9INXtWJULgbt01D/x8/6yJ2qpKyzdZD3pi6UIkzF++Da49xAelVKUeUMqd5eIQ==",
"dependencies": {
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"micromark-factory-space": "^1.0.0",
"micromark-util-character": "^1.0.0",
"micromark-util-symbol": "^1.0.0",
"micromark-util-types": "^1.0.0",
"uvu": "^0.5.0"
},
"funding": {
"type": "opencollective",
"url": "https://opencollective.com/unified"
}
},
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"node_modules/micromark-extension-math": {
"version": "2.1.2",
"resolved": "https://registry.npmjs.org/micromark-extension-math/-/micromark-extension-math-2.1.2.tgz",
"integrity": "sha512-es0CcOV89VNS9wFmyn+wyFTKweXGW4CEvdaAca6SWRWPyYCbBisnjaHLjWO4Nszuiud84jCpkHsqAJoa768Pvg==",
"dependencies": {
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"@types/katex": "^0.16.0",
"katex": "^0.16.0",
"micromark-factory-space": "^1.0.0",
"micromark-util-character": "^1.0.0",
"micromark-util-symbol": "^1.0.0",
"micromark-util-types": "^1.0.0",
"uvu": "^0.5.0"
},
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"funding": {
"type": "opencollective",
"url": "https://opencollective.com/unified"
}
},
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"node_modules/micromark-extension-mdx-expression": {
"version": "1.0.8",
"resolved": "https://registry.npmjs.org/micromark-extension-mdx-expression/-/micromark-extension-mdx-expression-1.0.8.tgz",
"integrity": "sha512-zZpeQtc5wfWKdzDsHRBY003H2Smg+PUi2REhqgIhdzAa5xonhP03FcXxqFSerFiNUr5AWmHpaNPQTBVOS4lrXw==",
"funding": [
{
"type": "GitHub Sponsors",
"url": "https://github.com/sponsors/unifiedjs"
},
{
"type": "OpenCollective",
"url": "https://opencollective.com/unified"
}
],
"dependencies": {
"@types/estree": "^1.0.0",
"micromark-factory-mdx-expression": "^1.0.0",
"micromark-factory-space": "^1.0.0",
"micromark-util-character": "^1.0.0",
"micromark-util-events-to-acorn": "^1.0.0",
"micromark-util-symbol": "^1.0.0",
"micromark-util-types": "^1.0.0",
"uvu": "^0.5.0"
}
},
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"node_modules/micromark-extension-mdx-jsx": {
"version": "1.0.5",
"resolved": "https://registry.npmjs.org/micromark-extension-mdx-jsx/-/micromark-extension-mdx-jsx-1.0.5.tgz",
"integrity": "sha512-gPH+9ZdmDflbu19Xkb8+gheqEDqkSpdCEubQyxuz/Hn8DOXiXvrXeikOoBA71+e8Pfi0/UYmU3wW3H58kr7akA==",
"dependencies": {
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"@types/acorn": "^4.0.0",
"@types/estree": "^1.0.0",
"estree-util-is-identifier-name": "^2.0.0",
"micromark-factory-mdx-expression": "^1.0.0",
"micromark-factory-space": "^1.0.0",
"micromark-util-character": "^1.0.0",
"micromark-util-symbol": "^1.0.0",
"micromark-util-types": "^1.0.0",
"uvu": "^0.5.0",
"vfile-message": "^3.0.0"
},
"funding": {
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"type": "opencollective",
"url": "https://opencollective.com/unified"
}
},
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"node_modules/micromark-extension-mdx-md": {
"version": "1.0.1",
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"resolved": "https://registry.npmjs.org/micromark-extension-mdx-md/-/micromark-extension-mdx-md-1.0.1.tgz",
"integrity": "sha512-7MSuj2S7xjOQXAjjkbjBsHkMtb+mDGVW6uI2dBL9snOBCbZmoNgDAeZ0nSn9j3T42UE/g2xVNMn18PJxZvkBEA==",
"dependencies": {
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"micromark-util-types": "^1.0.0"
},
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"funding": {
"type": "opencollective",
"url": "https://opencollective.com/unified"
}
},
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"node_modules/micromark-extension-mdxjs": {
"version": "1.0.1",
"resolved": "https://registry.npmjs.org/micromark-extension-mdxjs/-/micromark-extension-mdxjs-1.0.1.tgz",
"integrity": "sha512-7YA7hF6i5eKOfFUzZ+0z6avRG52GpWR8DL+kN47y3f2KhxbBZMhmxe7auOeaTBrW2DenbbZTf1ea9tA2hDpC2Q==",
"dependencies": {
"acorn": "^8.0.0",
"acorn-jsx": "^5.0.0",
"micromark-extension-mdx-expression": "^1.0.0",
"micromark-extension-mdx-jsx": "^1.0.0",
"micromark-extension-mdx-md": "^1.0.0",
"micromark-extension-mdxjs-esm": "^1.0.0",
"micromark-util-combine-extensions": "^1.0.0",
"micromark-util-types": "^1.0.0"
},
"funding": {
"type": "opencollective",
"url": "https://opencollective.com/unified"
}
},
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"node_modules/micromark-extension-mdxjs-esm": {
"version": "1.0.5",
"resolved": "https://registry.npmjs.org/micromark-extension-mdxjs-esm/-/micromark-extension-mdxjs-esm-1.0.5.tgz",
"integrity": "sha512-xNRBw4aoURcyz/S69B19WnZAkWJMxHMT5hE36GtDAyhoyn/8TuAeqjFJQlwk+MKQsUD7b3l7kFX+vlfVWgcX1w==",
"dependencies": {
"@types/estree": "^1.0.0",
"micromark-core-commonmark": "^1.0.0",
"micromark-util-character": "^1.0.0",
"micromark-util-events-to-acorn": "^1.0.0",
"micromark-util-symbol": "^1.0.0",
"micromark-util-types": "^1.0.0",
"unist-util-position-from-estree": "^1.1.0",
"uvu": "^0.5.0",
"vfile-message": "^3.0.0"
},
"funding": {
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"type": "opencollective",
"url": "https://opencollective.com/unified"
}
},
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"node_modules/micromark-factory-destination": {
"version": "1.1.0",
"resolved": "https://registry.npmjs.org/micromark-factory-destination/-/micromark-factory-destination-1.1.0.tgz",
"integrity": "sha512-XaNDROBgx9SgSChd69pjiGKbV+nfHGDPVYFs5dOoDd7ZnMAE+Cuu91BCpsY8RT2NP9vo/B8pds2VQNCLiu0zhg==",
"funding": [
{
"type": "GitHub Sponsors",
"url": "https://github.com/sponsors/unifiedjs"
},
{
"type": "OpenCollective",
"url": "https://opencollective.com/unified"
}
],
"dependencies": {
"micromark-util-character": "^1.0.0",
"micromark-util-symbol": "^1.0.0",
"micromark-util-types": "^1.0.0"
}
},
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"node_modules/micromark-factory-label": {
"version": "1.1.0",
"resolved": "https://registry.npmjs.org/micromark-factory-label/-/micromark-factory-label-1.1.0.tgz",
"integrity": "sha512-OLtyez4vZo/1NjxGhcpDSbHQ+m0IIGnT8BoPamh+7jVlzLJBH98zzuCoUeMxvM6WsNeh8wx8cKvqLiPHEACn0w==",
"funding": [
{
"type": "GitHub Sponsors",
"url": "https://github.com/sponsors/unifiedjs"
},
{
"type": "OpenCollective",
"url": "https://opencollective.com/unified"
}
],
"dependencies": {
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"micromark-util-character": "^1.0.0",
"micromark-util-symbol": "^1.0.0",
"micromark-util-types": "^1.0.0",
"uvu": "^0.5.0"
}
},
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"node_modules/micromark-factory-mdx-expression": {
"version": "1.0.9",
"resolved": "https://registry.npmjs.org/micromark-factory-mdx-expression/-/micromark-factory-mdx-expression-1.0.9.tgz",
"integrity": "sha512-jGIWzSmNfdnkJq05c7b0+Wv0Kfz3NJ3N4cBjnbO4zjXIlxJr+f8lk+5ZmwFvqdAbUy2q6B5rCY//g0QAAaXDWA==",
"funding": [
{
"type": "GitHub Sponsors",
"url": "https://github.com/sponsors/unifiedjs"
},
{
"type": "OpenCollective",
"url": "https://opencollective.com/unified"
}
],
"dependencies": {
"@types/estree": "^1.0.0",
"micromark-util-character": "^1.0.0",
"micromark-util-events-to-acorn": "^1.0.0",
"micromark-util-symbol": "^1.0.0",
"micromark-util-types": "^1.0.0",
"unist-util-position-from-estree": "^1.0.0",
"uvu": "^0.5.0",
"vfile-message": "^3.0.0"
}
},
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"node_modules/micromark-factory-space": {
"version": "1.1.0",
"resolved": "https://registry.npmjs.org/micromark-factory-space/-/micromark-factory-space-1.1.0.tgz",
"integrity": "sha512-cRzEj7c0OL4Mw2v6nwzttyOZe8XY/Z8G0rzmWQZTBi/jjwyw/U4uqKtUORXQrR5bAZZnbTI/feRV/R7hc4jQYQ==",
"funding": [
{
"type": "GitHub Sponsors",
"url": "https://github.com/sponsors/unifiedjs"
},
{
"type": "OpenCollective",
"url": "https://opencollective.com/unified"
}
],
"dependencies": {
"micromark-util-character": "^1.0.0",
"micromark-util-types": "^1.0.0"
}
},
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"node_modules/micromark-factory-title": {
"version": "1.1.0",
"resolved": "https://registry.npmjs.org/micromark-factory-title/-/micromark-factory-title-1.1.0.tgz",
"integrity": "sha512-J7n9R3vMmgjDOCY8NPw55jiyaQnH5kBdV2/UXCtZIpnHH3P6nHUKaH7XXEYuWwx/xUJcawa8plLBEjMPU24HzQ==",
"funding": [
{
"type": "GitHub Sponsors",
"url": "https://github.com/sponsors/unifiedjs"
},
{
"type": "OpenCollective",
"url": "https://opencollective.com/unified"
}
],
"dependencies": {
"micromark-factory-space": "^1.0.0",
"micromark-util-character": "^1.0.0",
"micromark-util-symbol": "^1.0.0",
"micromark-util-types": "^1.0.0"
}
},
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"node_modules/micromark-factory-whitespace": {
"version": "1.1.0",
"resolved": "https://registry.npmjs.org/micromark-factory-whitespace/-/micromark-factory-whitespace-1.1.0.tgz",
"integrity": "sha512-v2WlmiymVSp5oMg+1Q0N1Lxmt6pMhIHD457whWM7/GUlEks1hI9xj5w3zbc4uuMKXGisksZk8DzP2UyGbGqNsQ==",
"funding": [
{
"type": "GitHub Sponsors",
"url": "https://github.com/sponsors/unifiedjs"
},
{
"type": "OpenCollective",
"url": "https://opencollective.com/unified"
}
],
"dependencies": {
"micromark-factory-space": "^1.0.0",
"micromark-util-character": "^1.0.0",
"micromark-util-symbol": "^1.0.0",
"micromark-util-types": "^1.0.0"
}
},
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"node_modules/micromark-util-character": {
"version": "1.2.0",
"resolved": "https://registry.npmjs.org/micromark-util-character/-/micromark-util-character-1.2.0.tgz",
"integrity": "sha512-lXraTwcX3yH/vMDaFWCQJP1uIszLVebzUa3ZHdrgxr7KEU/9mL4mVgCpGbyhvNLNlauROiNUq7WN5u7ndbY6xg==",
"funding": [
{
"type": "GitHub Sponsors",
"url": "https://github.com/sponsors/unifiedjs"
},
{
"type": "OpenCollective",
"url": "https://opencollective.com/unified"
}
],
"dependencies": {
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"micromark-util-symbol": "^1.0.0",
"micromark-util-types": "^1.0.0"
}
},
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"node_modules/micromark-util-chunked": {
"version": "1.1.0",
"resolved": "https://registry.npmjs.org/micromark-util-chunked/-/micromark-util-chunked-1.1.0.tgz",
"integrity": "sha512-Ye01HXpkZPNcV6FiyoW2fGZDUw4Yc7vT0E9Sad83+bEDiCJ1uXu0S3mr8WLpsz3HaG3x2q0HM6CTuPdcZcluFQ==",
"funding": [
{
"type": "GitHub Sponsors",
"url": "https://github.com/sponsors/unifiedjs"
},
{
"type": "OpenCollective",
"url": "https://opencollective.com/unified"
}
],
"dependencies": {
"micromark-util-symbol": "^1.0.0"
}
},
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"node_modules/micromark-util-classify-character": {
"version": "1.1.0",
"resolved": "https://registry.npmjs.org/micromark-util-classify-character/-/micromark-util-classify-character-1.1.0.tgz",
"integrity": "sha512-SL0wLxtKSnklKSUplok1WQFoGhUdWYKggKUiqhX+Swala+BtptGCu5iPRc+xvzJ4PXE/hwM3FNXsfEVgoZsWbw==",
"funding": [
{
"type": "GitHub Sponsors",
"url": "https://github.com/sponsors/unifiedjs"
},
{
"type": "OpenCollective",
"url": "https://opencollective.com/unified"
}
],
"dependencies": {
"micromark-util-character": "^1.0.0",
"micromark-util-symbol": "^1.0.0",
"micromark-util-types": "^1.0.0"
}
},
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"node_modules/micromark-util-combine-extensions": {
"version": "1.1.0",
"resolved": "https://registry.npmjs.org/micromark-util-combine-extensions/-/micromark-util-combine-extensions-1.1.0.tgz",
"integrity": "sha512-Q20sp4mfNf9yEqDL50WwuWZHUrCO4fEyeDCnMGmG5Pr0Cz15Uo7KBs6jq+dq0EgX4DPwwrh9m0X+zPV1ypFvUA==",
"funding": [
{
"type": "GitHub Sponsors",
"url": "https://github.com/sponsors/unifiedjs"
},
{
"type": "OpenCollective",
"url": "https://opencollective.com/unified"
}
],
"dependencies": {
"micromark-util-chunked": "^1.0.0",
"micromark-util-types": "^1.0.0"
}
},
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"node_modules/micromark-util-decode-numeric-character-reference": {
"version": "1.1.0",
"resolved": "https://registry.npmjs.org/micromark-util-decode-numeric-character-reference/-/micromark-util-decode-numeric-character-reference-1.1.0.tgz",
"integrity": "sha512-m9V0ExGv0jB1OT21mrWcuf4QhP46pH1KkfWy9ZEezqHKAxkj4mPCy3nIH1rkbdMlChLHX531eOrymlwyZIf2iw==",
"funding": [
{
"type": "GitHub Sponsors",
"url": "https://github.com/sponsors/unifiedjs"
},
{
"type": "OpenCollective",
"url": "https://opencollective.com/unified"
}
],
"dependencies": {
"micromark-util-symbol": "^1.0.0"
}
},
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"node_modules/micromark-util-decode-string": {
"version": "1.1.0",
"resolved": "https://registry.npmjs.org/micromark-util-decode-string/-/micromark-util-decode-string-1.1.0.tgz",
"integrity": "sha512-YphLGCK8gM1tG1bd54azwyrQRjCFcmgj2S2GoJDNnh4vYtnL38JS8M4gpxzOPNyHdNEpheyWXCTnnTDY3N+NVQ==",
"funding": [
{
"type": "GitHub Sponsors",
"url": "https://github.com/sponsors/unifiedjs"
},
{
"type": "OpenCollective",
"url": "https://opencollective.com/unified"
}
],
"dependencies": {
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"decode-named-character-reference": "^1.0.0",
"micromark-util-character": "^1.0.0",
"micromark-util-decode-numeric-character-reference": "^1.0.0",
"micromark-util-symbol": "^1.0.0"
}
},
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"node_modules/micromark-util-encode": {
"version": "1.1.0",
"resolved": "https://registry.npmjs.org/micromark-util-encode/-/micromark-util-encode-1.1.0.tgz",
"integrity": "sha512-EuEzTWSTAj9PA5GOAs992GzNh2dGQO52UvAbtSOMvXTxv3Criqb6IOzJUBCmEqrrXSblJIJBbFFv6zPxpreiJw==",
"funding": [
{
"type": "GitHub Sponsors",
"url": "https://github.com/sponsors/unifiedjs"
},
{
"type": "OpenCollective",
"url": "https://opencollective.com/unified"
}
]
},
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"node_modules/micromark-util-events-to-acorn": {
"version": "1.2.3",
"resolved": "https://registry.npmjs.org/micromark-util-events-to-acorn/-/micromark-util-events-to-acorn-1.2.3.tgz",
"integrity": "sha512-ij4X7Wuc4fED6UoLWkmo0xJQhsktfNh1J0m8g4PbIMPlx+ek/4YdW5mvbye8z/aZvAPUoxgXHrwVlXAPKMRp1w==",
"funding": [
{
"type": "GitHub Sponsors",
"url": "https://github.com/sponsors/unifiedjs"
},
{
"type": "OpenCollective",
"url": "https://opencollective.com/unified"
}
],
"dependencies": {
"@types/acorn": "^4.0.0",
"@types/estree": "^1.0.0",
"@types/unist": "^2.0.0",
"estree-util-visit": "^1.0.0",
"micromark-util-symbol": "^1.0.0",
"micromark-util-types": "^1.0.0",
"uvu": "^0.5.0",
"vfile-message": "^3.0.0"
}
},
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"node_modules/micromark-util-html-tag-name": {
"version": "1.2.0",
"resolved": "https://registry.npmjs.org/micromark-util-html-tag-name/-/micromark-util-html-tag-name-1.2.0.tgz",
"integrity": "sha512-VTQzcuQgFUD7yYztuQFKXT49KghjtETQ+Wv/zUjGSGBioZnkA4P1XXZPT1FHeJA6RwRXSF47yvJ1tsJdoxwO+Q==",
"funding": [
{
"type": "GitHub Sponsors",
"url": "https://github.com/sponsors/unifiedjs"
},
{
"type": "OpenCollective",
"url": "https://opencollective.com/unified"
}
]
},
"node_modules/micromark-util-normalize-identifier": {
"version": "1.1.0",
"resolved": "https://registry.npmjs.org/micromark-util-normalize-identifier/-/micromark-util-normalize-identifier-1.1.0.tgz",
"integrity": "sha512-N+w5vhqrBihhjdpM8+5Xsxy71QWqGn7HYNUvch71iV2PM7+E3uWGox1Qp90loa1ephtCxG2ftRV/Conitc6P2Q==",
"funding": [
{
"type": "GitHub Sponsors",
"url": "https://github.com/sponsors/unifiedjs"
},
{
"type": "OpenCollective",
"url": "https://opencollective.com/unified"
}
],
"dependencies": {
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"micromark-util-symbol": "^1.0.0"
}
},
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"node_modules/micromark-util-resolve-all": {
"version": "1.1.0",
"resolved": "https://registry.npmjs.org/micromark-util-resolve-all/-/micromark-util-resolve-all-1.1.0.tgz",
"integrity": "sha512-b/G6BTMSg+bX+xVCshPTPyAu2tmA0E4X98NSR7eIbeC6ycCqCeE7wjfDIgzEbkzdEVJXRtOG4FbEm/uGbCRouA==",
"funding": [
{
"type": "GitHub Sponsors",
"url": "https://github.com/sponsors/unifiedjs"
},
{
"type": "OpenCollective",
"url": "https://opencollective.com/unified"
}
],
"dependencies": {
"micromark-util-types": "^1.0.0"
}
},
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"node_modules/micromark-util-sanitize-uri": {
"version": "1.2.0",
"resolved": "https://registry.npmjs.org/micromark-util-sanitize-uri/-/micromark-util-sanitize-uri-1.2.0.tgz",
"integrity": "sha512-QO4GXv0XZfWey4pYFndLUKEAktKkG5kZTdUNaTAkzbuJxn2tNBOr+QtxR2XpWaMhbImT2dPzyLrPXLlPhph34A==",
"funding": [
{
"type": "GitHub Sponsors",
"url": "https://github.com/sponsors/unifiedjs"
},
{
"type": "OpenCollective",
"url": "https://opencollective.com/unified"
}
],
"dependencies": {
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"micromark-util-character": "^1.0.0",
"micromark-util-encode": "^1.0.0",
"micromark-util-symbol": "^1.0.0"
}
},
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"node_modules/micromark-util-subtokenize": {
"version": "1.1.0",
"resolved": "https://registry.npmjs.org/micromark-util-subtokenize/-/micromark-util-subtokenize-1.1.0.tgz",
"integrity": "sha512-kUQHyzRoxvZO2PuLzMt2P/dwVsTiivCK8icYTeR+3WgbuPqfHgPPy7nFKbeqRivBvn/3N3GBiNC+JRTMSxEC7A==",
"funding": [
{
"type": "GitHub Sponsors",
"url": "https://github.com/sponsors/unifiedjs"
},
{
"type": "OpenCollective",
"url": "https://opencollective.com/unified"
}
],
"dependencies": {
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"micromark-util-chunked": "^1.0.0",
"micromark-util-symbol": "^1.0.0",
"micromark-util-types": "^1.0.0",
"uvu": "^0.5.0"
}
},
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"node_modules/micromark-util-symbol": {
"version": "1.1.0",
"resolved": "https://registry.npmjs.org/micromark-util-symbol/-/micromark-util-symbol-1.1.0.tgz",
"integrity": "sha512-uEjpEYY6KMs1g7QfJ2eX1SQEV+ZT4rUD3UcF6l57acZvLNK7PBZL+ty82Z1qhK1/yXIY4bdx04FKMgR0g4IAag==",
"funding": [
{
"type": "GitHub Sponsors",
"url": "https://github.com/sponsors/unifiedjs"
},
{
"type": "OpenCollective",
"url": "https://opencollective.com/unified"
}
]
},
"node_modules/micromark-util-types": {
"version": "1.1.0",
"resolved": "https://registry.npmjs.org/micromark-util-types/-/micromark-util-types-1.1.0.tgz",
"integrity": "sha512-ukRBgie8TIAcacscVHSiddHjO4k/q3pnedmzMQ4iwDcK0FtFCohKOlFbaOL/mPgfnPsL3C1ZyxJa4sbWrBl3jg==",
"funding": [
{
"type": "GitHub Sponsors",
"url": "https://github.com/sponsors/unifiedjs"
},
{
"type": "OpenCollective",
"url": "https://opencollective.com/unified"
}
]
},
"node_modules/micromatch": {
Bump micromatch from 4.0.7 to 4.0.8 in the npm_and_yarn group across 1 directory (#1890) Bumps the npm_and_yarn group with 1 update in the / directory: [micromatch](https://github.com/micromatch/micromatch). Updates `micromatch` from 4.0.7 to 4.0.8 <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/micromatch/micromatch/releases">micromatch's releases</a>.</em></p> <blockquote> <h2>4.0.8</h2> <p>Ultimate release that fixes both CVE-2024-4067 and CVE-2024-4068. We consider the issues low-priority, so even if you see automated scanners saying otherwise, don't be scared.</p> </blockquote> </details> <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/micromatch/micromatch/blob/master/CHANGELOG.md">micromatch's changelog</a>.</em></p> <blockquote> <h2>[4.0.8] - 2024-08-22</h2> <ul> <li>backported CVE-2024-4067 fix (from v4.0.6) over to 4.x branch</li> </ul> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/micromatch/micromatch/commit/8bd704ec0d9894693d35da425d827819916be920"><code>8bd704e</code></a> 4.0.8</li> <li><a href="https://github.com/micromatch/micromatch/commit/a0e68416a44da10f3e4e30845ab95af4fd286d5a"><code>a0e6841</code></a> run verb to generate README documentation</li> <li><a href="https://github.com/micromatch/micromatch/commit/4ec288484f6e8cccf597ad3d43529c31d0f7a02a"><code>4ec2884</code></a> Merge branch 'v4' into hauserkristof-feature/v4.0.8</li> <li><a href="https://github.com/micromatch/micromatch/commit/03aa8052171e878897eee5d7bb2ae0ae83ec2ade"><code>03aa805</code></a> Merge pull request <a href="https://redirect.github.com/micromatch/micromatch/issues/266">#266</a> from hauserkristof/feature/v4.0.8</li> <li><a href="https://github.com/micromatch/micromatch/commit/814f5f70efcd100ca9d29198867812a3d6ab91a8"><code>814f5f7</code></a> lint</li> <li><a href="https://github.com/micromatch/micromatch/commit/67fcce6a1077c2faf5ad0c5f998fa70202cc5dae"><code>67fcce6</code></a> fix: CHANGELOG about braces &amp; CVE-2024-4068, v4.0.5</li> <li><a href="https://github.com/micromatch/micromatch/commit/113f2e3fa7cb30b429eda7c4c38475a8e8ba1b30"><code>113f2e3</code></a> fix: CVE numbers in CHANGELOG</li> <li><a href="https://github.com/micromatch/micromatch/commit/d9dbd9a266686f44afb38da26fe016f96d1ec04f"><code>d9dbd9a</code></a> feat: updated CHANGELOG</li> <li><a href="https://github.com/micromatch/micromatch/commit/2ab13157f416679f54e3a32b1425e184bd16749e"><code>2ab1315</code></a> fix: use actions/setup-node@v4</li> <li><a href="https://github.com/micromatch/micromatch/commit/1406ea38f3e24b29f4d4f46908d5cffcb3e6c4ce"><code>1406ea3</code></a> feat: rework test to work on macos with node 10,12 and 14</li> <li>Additional commits viewable in <a href="https://github.com/micromatch/micromatch/compare/4.0.7...4.0.8">compare view</a></li> </ul> </details> <br /> [![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=micromatch&package-manager=npm_and_yarn&previous-version=4.0.7&new-version=4.0.8)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores) Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`. [//]: # (dependabot-automerge-start) [//]: # (dependabot-automerge-end) --- <details> <summary>Dependabot commands and options</summary> <br /> You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@dependabot show <dependency name> ignore conditions` will show all of the ignore conditions of the specified dependency - `@dependabot ignore <dependency name> major version` will close this group update PR and stop Dependabot creating any more for the specific dependency's major version (unless you unignore this specific dependency's major version or upgrade to it yourself) - `@dependabot ignore <dependency name> minor version` will close this group update PR and stop Dependabot creating any more for the specific dependency's minor version (unless you unignore this specific dependency's minor version or upgrade to it yourself) - `@dependabot ignore <dependency name>` will close this group update PR and stop Dependabot creating any more for the specific dependency (unless you unignore this specific dependency or upgrade to it yourself) - `@dependabot unignore <dependency name>` will remove all of the ignore conditions of the specified dependency - `@dependabot unignore <dependency name> <ignore condition>` will remove the ignore condition of the specified dependency and ignore conditions You can disable automated security fix PRs for this repo from the [Security Alerts page](https://github.com/Qiskit/documentation/network/alerts). </details> Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-08-29 02:36:46 +08:00
"version": "4.0.8",
"resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.8.tgz",
"integrity": "sha512-PXwfBhYu0hBCPw8Dn0E+WDYb7af3dSLVWKi3HGv84IdF4TyFoC0ysxFd0Goxw7nSv4T/PzEJQxsYsEiFCKo2BA==",
"dependencies": {
"braces": "^3.0.3",
"picomatch": "^2.3.1"
},
"engines": {
"node": ">=8.6"
}
},
"node_modules/mkdirp": {
"version": "3.0.1",
"resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-3.0.1.tgz",
"integrity": "sha512-+NsyUUAZDmo6YVHzL/stxSu3t9YS1iljliy3BSDrXJ/dkn1KYdmtZODGGjLcc9XLgVVpH4KshHB8XmZgMhaBXg==",
"bin": {
"mkdirp": "dist/cjs/src/bin.js"
},
"engines": {
"node": ">=10"
},
"funding": {
"url": "https://github.com/sponsors/isaacs"
}
},
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"node_modules/mri": {
"version": "1.2.0",
"resolved": "https://registry.npmjs.org/mri/-/mri-1.2.0.tgz",
"integrity": "sha512-tzzskb3bG8LvYGFF/mDTpq3jpI6Q9wc3LEmBaghu+DdCssd1FakN7Bc0hVNmEyGq1bq3RgfkCb3cmQLpNPOroA==",
"engines": {
"node": ">=4"
}
},
"node_modules/ms": {
"version": "2.1.2",
"resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz",
"integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w=="
},
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"node_modules/nth-check": {
"version": "2.1.1",
"resolved": "https://registry.npmjs.org/nth-check/-/nth-check-2.1.1.tgz",
"integrity": "sha512-lqjrjmaOoAnWfMmBPL+XNnynZh2+swxiX3WUE0s4yEHI6m+AwrK2UZOimIRl3X/4QctVqS8AiZjFqyOGrMXb/w==",
"dependencies": {
"boolbase": "^1.0.0"
},
"funding": {
"url": "https://github.com/fb55/nth-check?sponsor=1"
}
},
"node_modules/p-map": {
"version": "6.0.0",
"resolved": "https://registry.npmjs.org/p-map/-/p-map-6.0.0.tgz",
"integrity": "sha512-T8BatKGY+k5rU+Q/GTYgrEf2r4xRMevAN5mtXc2aPc4rS1j3s+vWTaO2Wag94neXuCAUAs8cxBL9EeB5EA6diw==",
"engines": {
"node": ">=16"
},
"funding": {
"url": "https://github.com/sponsors/sindresorhus"
}
},
"node_modules/parent-module": {
"version": "2.0.0",
"resolved": "https://registry.npmjs.org/parent-module/-/parent-module-2.0.0.tgz",
"integrity": "sha512-uo0Z9JJeWzv8BG+tRcapBKNJ0dro9cLyczGzulS6EfeyAdeC9sbojtW6XwvYxJkEne9En+J2XEl4zyglVeIwFg==",
"dependencies": {
"callsites": "^3.1.0"
},
"engines": {
"node": ">=8"
}
},
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"node_modules/parse-entities": {
"version": "4.0.1",
"resolved": "https://registry.npmjs.org/parse-entities/-/parse-entities-4.0.1.tgz",
"integrity": "sha512-SWzvYcSJh4d/SGLIOQfZ/CoNv6BTlI6YEQ7Nj82oDVnRpwe/Z/F1EMx42x3JAOwGBlCjeCH0BRJQbQ/opHL17w==",
"dependencies": {
"@types/unist": "^2.0.0",
"character-entities": "^2.0.0",
"character-entities-legacy": "^3.0.0",
"character-reference-invalid": "^2.0.0",
"decode-named-character-reference": "^1.0.0",
"is-alphanumerical": "^2.0.0",
"is-decimal": "^2.0.0",
"is-hexadecimal": "^2.0.0"
},
"funding": {
"type": "github",
"url": "https://github.com/sponsors/wooorm"
}
},
"node_modules/parse5": {
"version": "7.1.2",
"resolved": "https://registry.npmjs.org/parse5/-/parse5-7.1.2.tgz",
"integrity": "sha512-Czj1WaSVpaoj0wbhMzLmWD69anp2WH7FXMB9n1Sy8/ZFF9jolSQVMu1Ij5WIyGmcBmhk7EOndpO4mIpihVqAXw==",
"dependencies": {
"entities": "^4.4.0"
},
"funding": {
"url": "https://github.com/inikulin/parse5?sponsor=1"
}
},
"node_modules/parse5-htmlparser2-tree-adapter": {
"version": "7.0.0",
"resolved": "https://registry.npmjs.org/parse5-htmlparser2-tree-adapter/-/parse5-htmlparser2-tree-adapter-7.0.0.tgz",
"integrity": "sha512-B77tOZrqqfUfnVcOrUvfdLbz4pu4RopLD/4vmu3HUPswwTA8OH0EMW9BlWR2B0RCoiZRAHEUu7IxeP1Pd1UU+g==",
"dependencies": {
"domhandler": "^5.0.2",
"parse5": "^7.0.0"
},
"funding": {
"url": "https://github.com/inikulin/parse5?sponsor=1"
}
},
"node_modules/path-type": {
"version": "5.0.0",
"resolved": "https://registry.npmjs.org/path-type/-/path-type-5.0.0.tgz",
"integrity": "sha512-5HviZNaZcfqP95rwpv+1HDgUamezbqdSYTyzjTvwtJSnIH+3vnbmWsItli8OFEndS984VT55M3jduxZbX351gg==",
"engines": {
"node": ">=12"
},
"funding": {
"url": "https://github.com/sponsors/sindresorhus"
}
},
"node_modules/picomatch": {
"version": "2.3.1",
"resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz",
"integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==",
"engines": {
"node": ">=8.6"
},
"funding": {
"url": "https://github.com/sponsors/jonschlinkert"
}
},
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"node_modules/playwright": {
"version": "1.45.2",
"resolved": "https://registry.npmjs.org/playwright/-/playwright-1.45.2.tgz",
"integrity": "sha512-ReywF2t/0teRvNBpfIgh5e4wnrI/8Su8ssdo5XsQKpjxJj+jspm00jSoz9BTg91TT0c9HRjXO7LBNVrgYj9X0g==",
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"dev": true,
"dependencies": {
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"playwright-core": "1.45.2"
},
"bin": {
"playwright": "cli.js"
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
},
"engines": {
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"node": ">=18"
},
"optionalDependencies": {
"fsevents": "2.3.2"
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
}
},
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"node_modules/playwright-core": {
"version": "1.45.2",
"resolved": "https://registry.npmjs.org/playwright-core/-/playwright-core-1.45.2.tgz",
"integrity": "sha512-ha175tAWb0dTK0X4orvBIqi3jGEt701SMxMhyujxNrgd8K0Uy5wMSwwcQHtyB4om7INUkfndx02XnQ2p6dvLDw==",
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"dev": true,
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"bin": {
"playwright-core": "cli.js"
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
},
"engines": {
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"node": ">=18"
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
}
},
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"node_modules/playwright/node_modules/fsevents": {
"version": "2.3.2",
"resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz",
"integrity": "sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==",
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"dev": true,
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"hasInstallScript": true,
"optional": true,
"os": [
"darwin"
],
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"engines": {
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"node": "^8.16.0 || ^10.6.0 || >=11.0.0"
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
}
},
"node_modules/prettier": {
"version": "3.3.3",
"resolved": "https://registry.npmjs.org/prettier/-/prettier-3.3.3.tgz",
"integrity": "sha512-i2tDNA0O5IrMO757lfrdQZCc2jPNDVntV0m/+4whiDfWaTKfMNgR7Qz0NAeGz/nRqF4m5/6CLzbP4/liHt12Ew==",
"dev": true,
"bin": {
"prettier": "bin/prettier.cjs"
},
"engines": {
"node": ">=14"
},
"funding": {
"url": "https://github.com/prettier/prettier?sponsor=1"
}
},
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"node_modules/property-information": {
"version": "6.5.0",
"resolved": "https://registry.npmjs.org/property-information/-/property-information-6.5.0.tgz",
"integrity": "sha512-PgTgs/BlvHxOu8QuEN7wi5A0OmXaBcHpmCSTehcs6Uuu9IkDIEo13Hy7n898RHfrQ49vKCoGeWZSaAK01nwVig==",
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"funding": {
"type": "github",
"url": "https://github.com/sponsors/wooorm"
}
},
"node_modules/queue-microtask": {
"version": "1.2.3",
"resolved": "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz",
"integrity": "sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==",
"funding": [
{
"type": "github",
"url": "https://github.com/sponsors/feross"
},
{
"type": "patreon",
"url": "https://www.patreon.com/feross"
},
{
"type": "consulting",
"url": "https://feross.org/support"
}
]
},
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"node_modules/rehype-minify-whitespace": {
"version": "5.0.1",
"resolved": "https://registry.npmjs.org/rehype-minify-whitespace/-/rehype-minify-whitespace-5.0.1.tgz",
"integrity": "sha512-PPp4lWJiBPlePI/dv1BeYktbwkfgXkrK59MUa+tYbMPgleod+4DvFK2PLU0O0O60/xuhHfiR9GUIUlXTU8sRIQ==",
"dependencies": {
"@types/hast": "^2.0.0",
"hast-util-embedded": "^2.0.0",
"hast-util-is-element": "^2.0.0",
"hast-util-whitespace": "^2.0.0",
"unified": "^10.0.0",
"unist-util-is": "^5.0.0"
},
"funding": {
"type": "opencollective",
"url": "https://opencollective.com/unified"
}
},
"node_modules/rehype-parse": {
"version": "8.0.5",
"resolved": "https://registry.npmjs.org/rehype-parse/-/rehype-parse-8.0.5.tgz",
"integrity": "sha512-Ds3RglaY/+clEX2U2mHflt7NlMA72KspZ0JLUJgBBLpRddBcEw3H8uYZQliQriku22NZpYMfjDdSgHcjxue24A==",
"dependencies": {
"@types/hast": "^2.0.0",
"hast-util-from-parse5": "^7.0.0",
"parse5": "^6.0.0",
"unified": "^10.0.0"
},
"funding": {
"type": "opencollective",
"url": "https://opencollective.com/unified"
}
},
"node_modules/rehype-parse/node_modules/parse5": {
"version": "6.0.1",
"resolved": "https://registry.npmjs.org/parse5/-/parse5-6.0.1.tgz",
"integrity": "sha512-Ofn/CTFzRGTTxwpNEs9PP93gXShHcTq255nzRYSKe8AkVpZY7e1fpmTfOyoIvjP5HG7Z2ZM7VS9PPhQGW2pOpw=="
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
},
"node_modules/rehype-remark": {
"version": "9.1.2",
"resolved": "https://registry.npmjs.org/rehype-remark/-/rehype-remark-9.1.2.tgz",
"integrity": "sha512-c0fG3/CrJ95zAQ07xqHSkdpZybwdsY7X5dNWvgL2XqLKZuqmG3+vk6kP/4miCnp+R+x/0uKKRSpfXb9aGR8Z5w==",
"dependencies": {
"@types/hast": "^2.0.0",
"@types/mdast": "^3.0.0",
"hast-util-to-mdast": "^8.3.0",
"unified": "^10.0.0"
},
"funding": {
"type": "opencollective",
"url": "https://opencollective.com/unified"
}
},
"node_modules/remark-gfm": {
"version": "3.0.1",
"resolved": "https://registry.npmjs.org/remark-gfm/-/remark-gfm-3.0.1.tgz",
"integrity": "sha512-lEFDoi2PICJyNrACFOfDD3JlLkuSbOa5Wd8EPt06HUdptv8Gn0bxYTdbU/XXQ3swAPkEaGxxPN9cbnMHvVu1Ig==",
"dependencies": {
"@types/mdast": "^3.0.0",
"mdast-util-gfm": "^2.0.0",
"micromark-extension-gfm": "^2.0.0",
"unified": "^10.0.0"
},
"funding": {
"type": "opencollective",
"url": "https://opencollective.com/unified"
}
},
"node_modules/remark-math": {
"version": "5.1.1",
"resolved": "https://registry.npmjs.org/remark-math/-/remark-math-5.1.1.tgz",
"integrity": "sha512-cE5T2R/xLVtfFI4cCePtiRn+e6jKMtFDR3P8V3qpv8wpKjwvHoBA4eJzvX+nVrnlNy0911bdGmuspCSwetfYHw==",
"dependencies": {
"@types/mdast": "^3.0.0",
"mdast-util-math": "^2.0.0",
"micromark-extension-math": "^2.0.0",
"unified": "^10.0.0"
},
"funding": {
"type": "opencollective",
"url": "https://opencollective.com/unified"
}
},
"node_modules/remark-mdx": {
"version": "2.3.0",
"resolved": "https://registry.npmjs.org/remark-mdx/-/remark-mdx-2.3.0.tgz",
"integrity": "sha512-g53hMkpM0I98MU266IzDFMrTD980gNF3BJnkyFcmN+dD873mQeD5rdMO3Y2X+x8umQfbSE0PcoEDl7ledSA+2g==",
"dependencies": {
"mdast-util-mdx": "^2.0.0",
"micromark-extension-mdxjs": "^1.0.0"
},
"funding": {
"type": "opencollective",
"url": "https://opencollective.com/unified"
}
},
"node_modules/remark-parse": {
"version": "10.0.2",
"resolved": "https://registry.npmjs.org/remark-parse/-/remark-parse-10.0.2.tgz",
"integrity": "sha512-3ydxgHa/ZQzG8LvC7jTXccARYDcRld3VfcgIIFs7bI6vbRSxJJmzgLEIIoYKyrfhaY+ujuWaf/PJiMZXoiCXgw==",
"dependencies": {
"@types/mdast": "^3.0.0",
"mdast-util-from-markdown": "^1.0.0",
"unified": "^10.0.0"
},
"funding": {
"type": "opencollective",
"url": "https://opencollective.com/unified"
}
},
"node_modules/remark-stringify": {
"version": "10.0.3",
"resolved": "https://registry.npmjs.org/remark-stringify/-/remark-stringify-10.0.3.tgz",
"integrity": "sha512-koyOzCMYoUHudypbj4XpnAKFbkddRMYZHwghnxd7ue5210WzGw6kOBwauJTRUMq16jsovXx8dYNvSSWP89kZ3A==",
"dependencies": {
"@types/mdast": "^3.0.0",
"mdast-util-to-markdown": "^1.0.0",
"unified": "^10.0.0"
},
"funding": {
"type": "opencollective",
"url": "https://opencollective.com/unified"
}
},
"node_modules/repeat-string": {
"version": "1.6.1",
"resolved": "https://registry.npmjs.org/repeat-string/-/repeat-string-1.6.1.tgz",
"integrity": "sha512-PV0dzCYDNfRi1jCDbJzpW7jNNDRuCOG/jI5ctQcGKt/clZD+YcPS3yIlWuTJMmESC8aevCFmWJy5wjAFgNqN6w==",
"engines": {
"node": ">=0.10"
}
},
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"node_modules/require-directory": {
"version": "2.1.1",
"resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz",
"integrity": "sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==",
"engines": {
"node": ">=0.10.0"
}
},
"node_modules/resolve-from": {
"version": "5.0.0",
"resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz",
"integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==",
"engines": {
"node": ">=8"
}
},
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"node_modules/resolve-pkg-maps": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/resolve-pkg-maps/-/resolve-pkg-maps-1.0.0.tgz",
"integrity": "sha512-seS2Tj26TBVOC2NIc2rOe2y2ZO7efxITtLZcGSOnHHNOQ7CkiUBfw0Iw2ck6xkIhPwLhKNLS8BO+hEpngQlqzw==",
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"dev": true,
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"funding": {
"url": "https://github.com/privatenumber/resolve-pkg-maps?sponsor=1"
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
}
},
"node_modules/reusify": {
"version": "1.0.4",
"resolved": "https://registry.npmjs.org/reusify/-/reusify-1.0.4.tgz",
"integrity": "sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==",
"engines": {
"iojs": ">=1.0.0",
"node": ">=0.10.0"
}
},
"node_modules/run-parallel": {
"version": "1.2.0",
"resolved": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz",
"integrity": "sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==",
"funding": [
{
"type": "github",
"url": "https://github.com/sponsors/feross"
},
{
"type": "patreon",
"url": "https://www.patreon.com/feross"
},
{
"type": "consulting",
"url": "https://feross.org/support"
}
],
"dependencies": {
"queue-microtask": "^1.2.2"
}
},
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"node_modules/sade": {
"version": "1.8.1",
"resolved": "https://registry.npmjs.org/sade/-/sade-1.8.1.tgz",
"integrity": "sha512-xal3CZX1Xlo/k4ApwCFrHVACi9fBqJ7V+mwhBsuf/1IOKbBy098Fex+Wa/5QMubw09pSZ/u8EY8PWgevJsXp1A==",
"dependencies": {
"mri": "^1.1.0"
},
"engines": {
"node": ">=6"
}
},
"node_modules/section-matter": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/section-matter/-/section-matter-1.0.0.tgz",
"integrity": "sha512-vfD3pmTzGpufjScBh50YHKzEu2lxBWhVEHsNGoEXmCmn2hKGfeNLYMzCJpe8cD7gqX7TJluOVpBkAequ6dgMmA==",
"dependencies": {
"extend-shallow": "^2.0.1",
"kind-of": "^6.0.0"
},
"engines": {
"node": ">=4"
}
},
"node_modules/semver": {
"version": "7.6.3",
"resolved": "https://registry.npmjs.org/semver/-/semver-7.6.3.tgz",
"integrity": "sha512-oVekP1cKtI+CTDvHWYFUcMtsK/00wmAEfyqKfNdARm8u1wNVhSgaX7A8d4UuIlUI5e84iEwOhs7ZPYRmzU9U6A==",
"bin": {
"semver": "bin/semver.js"
},
"engines": {
"node": ">=10"
}
},
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"node_modules/slash": {
"version": "5.1.0",
"resolved": "https://registry.npmjs.org/slash/-/slash-5.1.0.tgz",
"integrity": "sha512-ZA6oR3T/pEyuqwMgAKT0/hAv8oAXckzbkmR0UkUosQ+Mc4RxGoJkRmwHgHufaenlyAgE1Mxgpdcrf75y6XcnDg==",
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"engines": {
"node": ">=14.16"
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
},
"funding": {
"url": "https://github.com/sponsors/sindresorhus"
}
},
"node_modules/space-separated-tokens": {
"version": "2.0.2",
"resolved": "https://registry.npmjs.org/space-separated-tokens/-/space-separated-tokens-2.0.2.tgz",
"integrity": "sha512-PEGlAwrG8yXGXRjW32fGbg66JAlOAwbObuqVoJpv/mRgoWDQfgH1wDPvtzWyUSNAXBGSk8h755YDbbcEy3SH2Q==",
"funding": {
"type": "github",
"url": "https://github.com/sponsors/wooorm"
}
},
"node_modules/sprintf-js": {
"version": "1.0.3",
"resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz",
"integrity": "sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g=="
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
},
"node_modules/string-width": {
"version": "4.2.3",
"resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz",
"integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==",
"dependencies": {
"emoji-regex": "^8.0.0",
"is-fullwidth-code-point": "^3.0.0",
"strip-ansi": "^6.0.1"
},
"engines": {
"node": ">=8"
}
},
"node_modules/string-width/node_modules/ansi-regex": {
"version": "5.0.1",
"resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz",
"integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==",
"engines": {
"node": ">=8"
}
},
"node_modules/string-width/node_modules/strip-ansi": {
"version": "6.0.1",
"resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz",
"integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==",
"dependencies": {
"ansi-regex": "^5.0.1"
},
"engines": {
"node": ">=8"
}
},
"node_modules/stringify-entities": {
"version": "4.0.4",
"resolved": "https://registry.npmjs.org/stringify-entities/-/stringify-entities-4.0.4.tgz",
"integrity": "sha512-IwfBptatlO+QCJUo19AqvrPNqlVMpW9YEL2LIVY+Rpv2qsjCGxaDLNRgeGsQWJhfItebuJhsGSLjaBbNSQ+ieg==",
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"dependencies": {
"character-entities-html4": "^2.0.0",
"character-entities-legacy": "^3.0.0"
},
"funding": {
"type": "github",
"url": "https://github.com/sponsors/wooorm"
}
},
"node_modules/strip-ansi": {
"version": "7.1.0",
"resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.1.0.tgz",
"integrity": "sha512-iq6eVVI64nQQTRYq2KtEg2d2uU7LElhTJwsH4YzIHZshxlgZms/wIc4VoDQTlG/IvVIrBKG06CrZnp0qv7hkcQ==",
"dependencies": {
"ansi-regex": "^6.0.1"
},
"engines": {
"node": ">=12"
},
"funding": {
"url": "https://github.com/chalk/strip-ansi?sponsor=1"
}
},
"node_modules/strip-bom-string": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/strip-bom-string/-/strip-bom-string-1.0.0.tgz",
"integrity": "sha512-uCC2VHvQRYu+lMh4My/sFNmF2klFymLX1wHJeXnbEJERpV/ZsVuonzerjfrGpIGF7LBVa1O7i9kjiWvJiFck8g==",
"engines": {
"node": ">=0.10.0"
}
},
"node_modules/to-regex-range": {
"version": "5.0.1",
"resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz",
"integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==",
"dependencies": {
"is-number": "^7.0.0"
},
"engines": {
"node": ">=8.0"
}
},
"node_modules/transform-markdown-links": {
"version": "2.1.0",
"resolved": "https://registry.npmjs.org/transform-markdown-links/-/transform-markdown-links-2.1.0.tgz",
"integrity": "sha512-7HWQwQ9US+tJSMMzi1aP+KA3QwfjDs8sB4H5GBMRHFNBMQVdgoF6VfIFy2nJR/UHRTkYoGFwWh2pe+QIwSvfOA==",
"engines": {
"node": ">=4"
}
},
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"node_modules/trim-trailing-lines": {
"version": "2.1.0",
"resolved": "https://registry.npmjs.org/trim-trailing-lines/-/trim-trailing-lines-2.1.0.tgz",
"integrity": "sha512-5UR5Biq4VlVOtzqkm2AZlgvSlDJtME46uV0br0gENbwN4l5+mMKT4b9gJKqWtuL2zAIqajGJGuvbCbcAJUZqBg==",
"funding": {
"type": "github",
"url": "https://github.com/sponsors/wooorm"
}
},
"node_modules/trough": {
"version": "2.2.0",
"resolved": "https://registry.npmjs.org/trough/-/trough-2.2.0.tgz",
"integrity": "sha512-tmMpK00BjZiUyVyvrBK7knerNgmgvcV/KLVyuma/SC+TQN167GrMRciANTz09+k3zW8L8t60jWO1GpfkZdjTaw==",
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"funding": {
"type": "github",
"url": "https://github.com/sponsors/wooorm"
}
},
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"node_modules/tsx": {
"version": "4.16.2",
"resolved": "https://registry.npmjs.org/tsx/-/tsx-4.16.2.tgz",
"integrity": "sha512-C1uWweJDgdtX2x600HjaFaucXTilT7tgUZHbOE4+ypskZ1OP8CRCSDkCxG6Vya9EwaFIVagWwpaVAn5wzypaqQ==",
"dev": true,
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"dependencies": {
"esbuild": "~0.21.5",
"get-tsconfig": "^4.7.5"
},
"bin": {
"tsx": "dist/cli.mjs"
},
"engines": {
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"node": ">=18.0.0"
},
Allow running `scripts/js` from other Node projects (#1747) This PR allows other repositories to depend on this repo as a VCS requirement, then to run our scripts, like this: ```json "scripts": { "check": "node node_modules/qiskit-documentation/dist/commands/checkMetadata.js" }, "dependencies": { "qiskit-documentation": "qiskit/documentation#3422358984f9ede3a6ac8a2bbe7df517fbd306cb" }, ``` ``` ❯ npm run check > my-function-docs@0.1.0 check:metadata > node node_modules/qiskit-documentation/dist/commands/checkMetadata.js ``` `node_modules/qiskit-documentation` will include only the contents of `src/js` but compiled to JavaScript, along with `package.json`. That results in the other project bringing in all of the transitive dependencies of this repo. Running scripts locally still works. ## Migration to ES Modules Before, we were using CommonJS for how imports and module loading works. However, this was causing issues when trying to run in other repos. The easiest fix was to migrate to ES Modules by setting `"type": "module"` in `package.json`. This required that we set a `.js` file extension in all of our import statements, and that we use `lodash-es` rather than `lodash`. ## Migration to Playwright I could not get Jest to play nicely with TypeScript & ES Modules. The simplest fix was to migrate to Playwright. We already use Playwright in qiskit-sphinx-theme, so this brings nice consistency to the open source projects. ## Followup work: fix individual scripts Some of the scripts may need changes to work in other repositories, like our internal link checker. For now, `checkMetadata.ts` and `checkExternalLinks.ts` definitely work.
2024-07-24 01:19:24 +08:00
"optionalDependencies": {
"fsevents": "~2.3.3"
}
},
"node_modules/typescript": {
"version": "5.2.2",
"resolved": "https://registry.npmjs.org/typescript/-/typescript-5.2.2.tgz",
"integrity": "sha512-mI4WrpHsbCIcwT9cF4FZvr80QUeKvsUsUvKDoR+X/7XHQH98xYD8YHZg7ANtz2GtZt/CBq2QJ0thkGJMHfqc1w==",
"dev": true,
"bin": {
"tsc": "bin/tsc",
"tsserver": "bin/tsserver"
},
"engines": {
"node": ">=14.17"
}
},
"node_modules/unicorn-magic": {
"version": "0.1.0",
"resolved": "https://registry.npmjs.org/unicorn-magic/-/unicorn-magic-0.1.0.tgz",
"integrity": "sha512-lRfVq8fE8gz6QMBuDM6a+LO3IAzTi05H6gCVaUpir2E1Rwpo4ZUog45KpNXKC/Mn3Yb9UDuHumeFTo9iV/D9FQ==",
"engines": {
"node": ">=18"
},
"funding": {
"url": "https://github.com/sponsors/sindresorhus"
}
},
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"node_modules/unified": {
"version": "10.1.2",
"resolved": "https://registry.npmjs.org/unified/-/unified-10.1.2.tgz",
"integrity": "sha512-pUSWAi/RAnVy1Pif2kAoeWNBa3JVrx0MId2LASj8G+7AiHWoKZNTomq6LG326T68U7/e263X6fTdcXIy7XnF7Q==",
"dependencies": {
"@types/unist": "^2.0.0",
"bail": "^2.0.0",
"extend": "^3.0.0",
"is-buffer": "^2.0.0",
"is-plain-obj": "^4.0.0",
"trough": "^2.0.0",
"vfile": "^5.0.0"
},
"funding": {
"type": "opencollective",
"url": "https://opencollective.com/unified"
}
},
"node_modules/unist-util-find-after": {
"version": "4.0.1",
"resolved": "https://registry.npmjs.org/unist-util-find-after/-/unist-util-find-after-4.0.1.tgz",
"integrity": "sha512-QO/PuPMm2ERxC6vFXEPtmAutOopy5PknD+Oq64gGwxKtk4xwo9Z97t9Av1obPmGU0IyTa6EKYUfTrK2QJS3Ozw==",
"dependencies": {
"@types/unist": "^2.0.0",
"unist-util-is": "^5.0.0"
},
"funding": {
"type": "opencollective",
"url": "https://opencollective.com/unified"
}
},
"node_modules/unist-util-is": {
"version": "5.2.1",
"resolved": "https://registry.npmjs.org/unist-util-is/-/unist-util-is-5.2.1.tgz",
"integrity": "sha512-u9njyyfEh43npf1M+yGKDGVPbY/JWEemg5nH05ncKPfi+kBbKBJoTdsogMu33uhytuLlv9y0O7GH7fEdwLdLQw==",
"dependencies": {
"@types/unist": "^2.0.0"
},
"funding": {
"type": "opencollective",
"url": "https://opencollective.com/unified"
}
},
"node_modules/unist-util-position-from-estree": {
"version": "1.1.2",
"resolved": "https://registry.npmjs.org/unist-util-position-from-estree/-/unist-util-position-from-estree-1.1.2.tgz",
"integrity": "sha512-poZa0eXpS+/XpoQwGwl79UUdea4ol2ZuCYguVaJS4qzIOMDzbqz8a3erUCOmubSZkaOuGamb3tX790iwOIROww==",
"dependencies": {
"@types/unist": "^2.0.0"
},
"funding": {
"type": "opencollective",
"url": "https://opencollective.com/unified"
}
},
"node_modules/unist-util-remove-position": {
"version": "4.0.2",
"resolved": "https://registry.npmjs.org/unist-util-remove-position/-/unist-util-remove-position-4.0.2.tgz",
"integrity": "sha512-TkBb0HABNmxzAcfLf4qsIbFbaPDvMO6wa3b3j4VcEzFVaw1LBKwnW4/sRJ/atSLSzoIg41JWEdnE7N6DIhGDGQ==",
"dependencies": {
"@types/unist": "^2.0.0",
"unist-util-visit": "^4.0.0"
},
"funding": {
"type": "opencollective",
"url": "https://opencollective.com/unified"
}
},
"node_modules/unist-util-stringify-position": {
"version": "3.0.3",
"resolved": "https://registry.npmjs.org/unist-util-stringify-position/-/unist-util-stringify-position-3.0.3.tgz",
"integrity": "sha512-k5GzIBZ/QatR8N5X2y+drfpWG8IDBzdnVj6OInRNWm1oXrzydiaAT2OQiA8DPRRZyAKb9b6I2a6PxYklZD0gKg==",
"dependencies": {
"@types/unist": "^2.0.0"
},
"funding": {
"type": "opencollective",
"url": "https://opencollective.com/unified"
}
},
"node_modules/unist-util-visit": {
"version": "4.1.2",
"resolved": "https://registry.npmjs.org/unist-util-visit/-/unist-util-visit-4.1.2.tgz",
"integrity": "sha512-MSd8OUGISqHdVvfY9TPhyK2VdUrPgxkUtWSuMHF6XAAFuL4LokseigBnZtPnJMu+FbynTkFNnFlyjxpVKujMRg==",
"dependencies": {
"@types/unist": "^2.0.0",
"unist-util-is": "^5.0.0",
"unist-util-visit-parents": "^5.1.1"
},
"funding": {
"type": "opencollective",
"url": "https://opencollective.com/unified"
}
},
"node_modules/unist-util-visit-parents": {
"version": "5.1.3",
"resolved": "https://registry.npmjs.org/unist-util-visit-parents/-/unist-util-visit-parents-5.1.3.tgz",
"integrity": "sha512-x6+y8g7wWMyQhL1iZfhIPhDAs7Xwbn9nRosDXl7qoPTSCy0yNxnKc+hWokFifWQIDGi154rdUqKvbCa4+1kLhg==",
"dependencies": {
"@types/unist": "^2.0.0",
"unist-util-is": "^5.0.0"
},
"funding": {
"type": "opencollective",
"url": "https://opencollective.com/unified"
}
},
"node_modules/uvu": {
"version": "0.5.6",
"resolved": "https://registry.npmjs.org/uvu/-/uvu-0.5.6.tgz",
"integrity": "sha512-+g8ENReyr8YsOc6fv/NVJs2vFdHBnBNdfE49rshrTzDWOlUx4Gq7KOS2GD8eqhy2j+Ejq29+SbKH8yjkAqXqoA==",
"dependencies": {
"dequal": "^2.0.0",
"diff": "^5.0.0",
"kleur": "^4.0.3",
"sade": "^1.7.3"
},
"bin": {
"uvu": "bin.js"
},
"engines": {
"node": ">=8"
}
},
"node_modules/vfile": {
"version": "5.3.7",
"resolved": "https://registry.npmjs.org/vfile/-/vfile-5.3.7.tgz",
"integrity": "sha512-r7qlzkgErKjobAmyNIkkSpizsFPYiUPuJb5pNW1RB4JcYVZhs4lIbVqk8XPk033CV/1z8ss5pkax8SuhGpcG8g==",
"dependencies": {
"@types/unist": "^2.0.0",
"is-buffer": "^2.0.0",
"unist-util-stringify-position": "^3.0.0",
"vfile-message": "^3.0.0"
},
"funding": {
"type": "opencollective",
"url": "https://opencollective.com/unified"
}
},
"node_modules/vfile-location": {
"version": "4.1.0",
"resolved": "https://registry.npmjs.org/vfile-location/-/vfile-location-4.1.0.tgz",
"integrity": "sha512-YF23YMyASIIJXpktBa4vIGLJ5Gs88UB/XePgqPmTa7cDA+JeO3yclbpheQYCHjVHBn/yePzrXuygIL+xbvRYHw==",
"dependencies": {
"@types/unist": "^2.0.0",
"vfile": "^5.0.0"
},
"funding": {
"type": "opencollective",
"url": "https://opencollective.com/unified"
}
},
"node_modules/vfile-message": {
"version": "3.1.4",
"resolved": "https://registry.npmjs.org/vfile-message/-/vfile-message-3.1.4.tgz",
"integrity": "sha512-fa0Z6P8HUrQN4BZaX05SIVXic+7kE3b05PWAtPuYP9QLHsLKYR7/AlLW3NtOrpXRLeawpDLMsVkmk5DG0NXgWw==",
"dependencies": {
"@types/unist": "^2.0.0",
"unist-util-stringify-position": "^3.0.0"
},
"funding": {
"type": "opencollective",
"url": "https://opencollective.com/unified"
}
},
"node_modules/vscode-languageserver-textdocument": {
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"version": "1.0.11",
"resolved": "https://registry.npmjs.org/vscode-languageserver-textdocument/-/vscode-languageserver-textdocument-1.0.11.tgz",
"integrity": "sha512-X+8T3GoiwTVlJbicx/sIAF+yuJAqz8VvwJyoMVhwEMoEKE/fkDmrqUgDMyBECcM2A2frVZIUj5HI/ErRXCfOeA=="
},
"node_modules/vscode-uri": {
"version": "3.0.8",
"resolved": "https://registry.npmjs.org/vscode-uri/-/vscode-uri-3.0.8.tgz",
"integrity": "sha512-AyFQ0EVmsOZOlAnxoFOGOq1SQDWAB7C6aqMGS23svWAllfOaxbuFvcT8D1i8z3Gyn8fraVeZNNmN6e9bxxXkKw=="
},
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"node_modules/web-namespaces": {
"version": "2.0.1",
"resolved": "https://registry.npmjs.org/web-namespaces/-/web-namespaces-2.0.1.tgz",
"integrity": "sha512-bKr1DkiNa2krS7qxNtdrtHAmzuYGFQLiQ13TsorsdT6ULTkPLKuu5+GsFpDlg6JFjUTwX2DyhMPG2be8uPrqsQ==",
"funding": {
"type": "github",
"url": "https://github.com/sponsors/wooorm"
}
},
"node_modules/wrap-ansi": {
"version": "7.0.0",
"resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz",
"integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==",
"dependencies": {
"ansi-styles": "^4.0.0",
"string-width": "^4.1.0",
"strip-ansi": "^6.0.0"
},
"engines": {
"node": ">=10"
},
"funding": {
"url": "https://github.com/chalk/wrap-ansi?sponsor=1"
}
},
"node_modules/wrap-ansi/node_modules/ansi-regex": {
"version": "5.0.1",
"resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz",
"integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==",
"engines": {
"node": ">=8"
}
},
"node_modules/wrap-ansi/node_modules/strip-ansi": {
"version": "6.0.1",
"resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz",
"integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==",
"dependencies": {
"ansi-regex": "^5.0.1"
},
"engines": {
"node": ">=8"
}
},
"node_modules/xdg-basedir": {
"version": "5.1.0",
"resolved": "https://registry.npmjs.org/xdg-basedir/-/xdg-basedir-5.1.0.tgz",
"integrity": "sha512-GCPAHLvrIH13+c0SuacwvRYj2SxJXQ4kaVTT5xgL3kPrz56XxkF21IGhjSE1+W0aw7gpBWRGXLCPnPby6lSpmQ==",
"engines": {
"node": ">=12"
},
"funding": {
"url": "https://github.com/sponsors/sindresorhus"
}
},
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"node_modules/y18n": {
"version": "5.0.8",
"resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz",
"integrity": "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==",
"engines": {
"node": ">=10"
}
},
"node_modules/yaml": {
"version": "2.5.0",
"resolved": "https://registry.npmjs.org/yaml/-/yaml-2.5.0.tgz",
"integrity": "sha512-2wWLbGbYDiSqqIKoPjar3MPgB94ErzCtrNE1FdqGuaO0pi2JGjmE8aW8TDZwzU7vuxcGRdL/4gPQwQ7hD5AMSw==",
"bin": {
"yaml": "bin.mjs"
},
"engines": {
"node": ">= 14"
}
},
Add Jest and Sphinx parsing library (#61) ## Background First part of https://github.com/Qiskit/documentation/issues/9. The docs infrastructure expects MDX files, but `qiskit`, `qiskit-ibm-provider`, and `qiskit-ibm-runtime` use Sphinx to generate their API references from source code. So, @axelhzf created a pipeline to convert Sphinx output to MDX. We are moving that pipeline to live in open source since the API references are also open source. ## What this PR does This adds the `lib/sphinx` code and its tests. The code is copied over without change, other than adding copyright headers. The PR also sets up Jest. A follow up PR will add the actual parsing script. I split up the PRs since this adds non-trivial infrastructure like Jest, so to have a smaller PR to review. This code will be deleted from the internal repository once https://github.com/Qiskit/documentation/issues/9 is complete and the internal repository is consuming this one. ## Why Jest? We use Playwright in https://github.com/Qiskit/qiskit_sphinx_theme, so I considered using that too here for consistency. But I stuck with the internal repo's decision to use Jest because Playwright doesn't have an equivalent to `toMatchInlineSnapshot`. I think Playwright is awesome, but we're never going to have Playwright integration tests in this repository since we're not testing the docs site itself in this repo, i.e. we don't need to spin up a server. Jest is simpler for our unit tests. Co-authored-by: Axel Hernández Ferrera <axelhzf@gmail.com>
2023-09-29 21:33:32 +08:00
"node_modules/yargs": {
"version": "17.7.2",
"resolved": "https://registry.npmjs.org/yargs/-/yargs-17.7.2.tgz",
"integrity": "sha512-7dSzzRQ++CKnNI/krKnYRV7JKKPUXMEh61soaHKg9mrWEhzFWhFnxPxGl+69cD1Ou63C13NUPCnmIcrvqCuM6w==",
"dependencies": {
"cliui": "^8.0.1",
"escalade": "^3.1.1",
"get-caller-file": "^2.0.5",
"require-directory": "^2.1.1",
"string-width": "^4.2.3",
"y18n": "^5.0.5",
"yargs-parser": "^21.1.1"
},
"engines": {
"node": ">=12"
}
},
"node_modules/yargs-parser": {
"version": "21.1.1",
"resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-21.1.1.tgz",
"integrity": "sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==",
"engines": {
"node": ">=12"
}
},
"node_modules/zwitch": {
"version": "2.0.4",
"resolved": "https://registry.npmjs.org/zwitch/-/zwitch-2.0.4.tgz",
"integrity": "sha512-bXE4cR/kVZhKZX/RjPEflHaKVhUVl85noU3v6b8apfQEc1x4A+zBxjZ4lN8LqGd6WZ3dl98pY4o717VFmoPp+A==",
"funding": {
"type": "github",
"url": "https://github.com/sponsors/wooorm"
}
},
"node_modules/zx": {
"version": "8.1.4",
"resolved": "https://registry.npmjs.org/zx/-/zx-8.1.4.tgz",
"integrity": "sha512-QFDYYpnzdpRiJ3dL2102Cw26FpXpWshW4QLTGxiYfIcwdAqg084jRCkK/kuP/NOSkxOjydRwNFG81qzA5r1a6w==",
"bin": {
"zx": "build/cli.js"
},
"engines": {
"node": ">= 12.17.0"
},
"optionalDependencies": {
"@types/fs-extra": ">=11",
"@types/node": ">=20"
}
}
}
}