@gsknnft/bigint-buffer 1.4.1 → 1.4.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (104) hide show
  1. package/README.md +89 -205
  2. package/build/Release/bigint_buffer.exp +0 -0
  3. package/build/Release/bigint_buffer.iobj +0 -0
  4. package/build/Release/bigint_buffer.ipdb +0 -0
  5. package/build/Release/bigint_buffer.lib +0 -0
  6. package/build/Release/bigint_buffer.node +0 -0
  7. package/build/Release/bigint_buffer.pdb +0 -0
  8. package/build/Release/obj/bigint_buffer/bigint_buffer.node.recipe +11 -0
  9. package/build/Release/obj/bigint_buffer/bigint_buffer.tlog/CL.command.1.tlog +0 -0
  10. package/build/Release/obj/bigint_buffer/bigint_buffer.tlog/CL.read.1.tlog +0 -0
  11. package/build/Release/obj/bigint_buffer/bigint_buffer.tlog/CL.write.1.tlog +0 -0
  12. package/build/Release/obj/bigint_buffer/bigint_buffer.tlog/Cl.items.tlog +2 -0
  13. package/build/Release/obj/bigint_buffer/bigint_buffer.tlog/bigint_buffer.lastbuildstate +2 -0
  14. package/build/Release/obj/bigint_buffer/bigint_buffer.tlog/link.command.1.tlog +0 -0
  15. package/build/Release/obj/bigint_buffer/bigint_buffer.tlog/link.read.1.tlog +0 -0
  16. package/build/Release/obj/bigint_buffer/bigint_buffer.tlog/link.secondary.1.tlog +5 -0
  17. package/build/Release/obj/bigint_buffer/bigint_buffer.tlog/link.write.1.tlog +0 -0
  18. package/build/Release/obj/bigint_buffer/src/bigint-buffer.obj +0 -0
  19. package/build/Release/obj/bigint_buffer/win_delay_load_hook.obj +0 -0
  20. package/build/bigint_buffer.vcxproj +148 -0
  21. package/build/bigint_buffer.vcxproj.filters +64 -0
  22. package/build/binding.sln +19 -0
  23. package/build/config.gypi +525 -0
  24. package/dist/index.umd.js +1 -1
  25. package/dist/tsconfig.tsbuildinfo +1 -1
  26. package/dist/types/conversion/src/ts/index.d.ts +168 -0
  27. package/dist/types/conversion/test/bigintToBase64.test.d.ts +1 -0
  28. package/dist/types/conversion/test/bigintToBuf.test.d.ts +1 -0
  29. package/dist/types/conversion/test/bigintToHex.test.d.ts +1 -0
  30. package/dist/types/conversion/test/bigintToText.test.d.ts +1 -0
  31. package/dist/types/conversion/test/bufToBigint.test.d.ts +1 -0
  32. package/dist/types/conversion/test/hexToBigint.test.d.ts +1 -0
  33. package/dist/types/conversion/test/hexToBuf.test.d.ts +1 -0
  34. package/dist/types/conversion/test/parseHex.test.d.ts +1 -0
  35. package/dist/types/conversion/test/setup.test.d.ts +1 -0
  36. package/dist/types/conversion/test/textToBuf.test.d.ts +1 -0
  37. package/package.json +47 -30
  38. package/src/bigint-buffer.c +203 -0
  39. package/src/bigint-buffer.test.ts +11 -0
  40. package/src/conversion/.github/workflows/build-and-test.yml +116 -0
  41. package/src/conversion/CODE_OF_CONDUCT.md +134 -0
  42. package/src/conversion/LICENSE +21 -0
  43. package/src/conversion/README.md +48 -0
  44. package/src/conversion/docs/README.md +34 -0
  45. package/src/conversion/docs/functions/base64ToBigint.md +27 -0
  46. package/src/conversion/docs/functions/bigintToBase64.md +43 -0
  47. package/src/conversion/docs/functions/bigintToBuf.md +35 -0
  48. package/src/conversion/docs/functions/bigintToHex.md +43 -0
  49. package/src/conversion/docs/functions/bigintToText.md +31 -0
  50. package/src/conversion/docs/functions/bufToBigint.md +25 -0
  51. package/src/conversion/docs/functions/bufToHex.md +37 -0
  52. package/src/conversion/docs/functions/bufToText.md +27 -0
  53. package/src/conversion/docs/functions/hexToBigint.md +29 -0
  54. package/src/conversion/docs/functions/hexToBuf.md +37 -0
  55. package/src/conversion/docs/functions/parseHex.md +45 -0
  56. package/src/conversion/docs/functions/textToBigint.md +27 -0
  57. package/src/conversion/docs/functions/textToBuf.md +33 -0
  58. package/src/conversion/docs/functions/toBigIntBE.md +27 -0
  59. package/src/conversion/docs/functions/toBigIntLE.md +27 -0
  60. package/src/conversion/docs/functions/toBufferBE.md +33 -0
  61. package/src/conversion/docs/functions/toBufferLE.md +33 -0
  62. package/src/conversion/docs/functions/validateBigIntBuffer.md +15 -0
  63. package/src/conversion/docs/type-aliases/TypedArray.md +11 -0
  64. package/src/conversion/docs/variables/isNative.md +11 -0
  65. package/src/conversion/example.cjs +9 -0
  66. package/src/conversion/example.esm.js +11 -0
  67. package/src/conversion/index.ts +1 -0
  68. package/src/conversion/package.json +163 -0
  69. package/src/conversion/src/docs/index.md +47 -0
  70. package/src/conversion/src/ts/index.ts +514 -0
  71. package/src/conversion/test/bigintToBase64.test.ts +37 -0
  72. package/src/conversion/test/bigintToBuf.test.ts +43 -0
  73. package/src/conversion/test/bigintToHex.test.ts +52 -0
  74. package/src/conversion/test/bigintToText.test.ts +30 -0
  75. package/src/conversion/test/bufToBigint.test.ts +20 -0
  76. package/src/conversion/test/hexToBigint.test.ts +22 -0
  77. package/src/conversion/test/hexToBuf.test.ts +39 -0
  78. package/src/conversion/test/parseHex.test.ts +35 -0
  79. package/src/conversion/test/setup.test.ts +9 -0
  80. package/src/conversion/test/textToBuf.test.ts +26 -0
  81. package/src/conversion/tsconfig.json +57 -0
  82. package/src/conversion/tsconfig.rollup.json +9 -0
  83. package/src/conversion/typedoc.json +5 -0
  84. package/src/conversion/types/bindings.d.t.s +4 -0
  85. package/src/conversion/vite.config.ts +10 -0
  86. package/src/conversion/vitest.config.ts +15 -0
  87. package/src/index.bench.ts +206 -0
  88. package/src/index.spec.ts +318 -0
  89. package/src/index.ts +215 -0
  90. package/.travis.yml +0 -51
  91. package/PR_TEMPLATE.md +0 -53
  92. package/WHY_BIGINT.md +0 -127
  93. package/benchmark.md +0 -38
  94. package/eslint.config.ts +0 -12
  95. package/karma.conf.js +0 -62
  96. package/pnpm-workspace.yaml +0 -14
  97. package/rollup.cjs.config.js +0 -13
  98. package/rollup.conversion.cjs.config.js +0 -13
  99. package/rollup.conversion.esm.config.js +0 -24
  100. package/rollup.esm.config.js +0 -24
  101. package/tsconfig.tsbuildinfo +0 -1
  102. package/vite.config.ts +0 -44
  103. package/vitest.config.ts +0 -20
  104. /package/dist/types/dist/dist/{index.d.ts → types/index.d.ts} +0 -0
package/README.md CHANGED
@@ -1,205 +1,89 @@
1
- # 💪🔢 @gsknnft/bigint-buffer: Secure Buffer Utilities for TC39 BigInt Proposal
2
-
3
- [![NPM Version](https://img.shields.io/npm/v/@gsknnft/bigint-buffer.svg?style=flat-square)](https://www.npmjs.com/package/@gsknnft/bigint-buffer)
4
- [![Node Version](https://img.shields.io/node/v/@gsknnft/bigint-buffer.svg?style=flat-square)](https://nodejs.org)
5
- [![Maintained Fork](https://img.shields.io/badge/fork-maintained-blue?style=flat-square)](https://github.com/gsknnft/bigint-buffer)
6
- Modern, secure BigInt Buffer conversion with native bindings, browser fallbacks, and the full `bigint-conversion` API built in.
7
-
8
- ---
9
-
10
- ## 🔐 Security Notice: This Module Has Been Reclaimed
11
- This fork (`@gsknnft/bigint-buffer`) is actively maintained, secure, and recommended for all users. Native now builds clean. All conversion helpers are live and set.
12
- **removed useless deps - back to ZERO dependancies unless chosen native bindings**
13
- ---
14
-
15
- Modern, secure BigInt ↔ Buffer conversion with native bindings, browser fallbacks, and the full `bigint-conversion` API built in.
16
-
17
- As of October 2025, `bigint-buffer@1.1.5` is **compromised and flagged by multiple audit tools** due to unresolved vulnerabilities in its native bindings and transitive dependencies. No upstream patch has been published.
18
- As the original `bigint-buffer` package is deprecated. This repo (`@gsknnft/bigint-buffer`) is the official, actively maintained successor. All users should migrate for security, performance, and modern features.
19
-
20
- This repo — `@gsknnft/bigint-buffer@1.4.0` — is a **sovereign override**:
21
- - ✅ Rebuilt with modern TypeScript and Rollup
22
- - ✅ Native bindings patched and rebuilt via `node-gyp`
23
- - ✅ Browser fallback formalized via `"browser"` field
24
- - ✅ ESM/CJS duality declared via `"exports"`
25
- - Peer dependency alignment and audit compliance restored
26
-
27
- If you're using `bigint-buffer` in a secure or reproducible system, **migrate to `@gsknnft/bigint-buffer`** or override via `pnpm`:
28
-
29
- ```json
30
- "pnpm": {
31
- "overrides": {
32
- "bigint-buffer": "@gsknnft/bigint-buffer@1.4.0"
33
- }
34
- }
35
- ```
36
-
37
-
38
- **This fork is maintained by CoreFlame/GSKNNFT as part of the SigilNet ecosystem.**
39
-
40
- ---
41
-
42
- ## Why BigInts?
43
-
44
- BigInts are primitive arbitrary precision integers, overcoming the limitations of JS numbers (max 53 bits). They enable safe manipulation of 64, 128, 256+ bit values (e.g., database IDs, hashes) with much better performance than Buffer or BN.js.
45
-
46
- **Performance highlights:**
47
-
48
- ```
49
- Buffer equality: 12M ops/s
50
- BigInt equality: 798M ops/s
51
- BN.js equality: 73M ops/s
52
- BN.js multiply: 4.7M ops/s
53
- BigInt multiply: 15M ops/s
54
- ```
55
-
56
- ---
57
-
58
- ## Why This Package?
59
-
60
- It is the only currently known secure, reproducible implementation of BigInt ↔ Buffer conversion with native fallback.
61
-
62
- - Efficient, secure conversion between BigInt and Buffer (native N-API bindings in Node, pure JS fallback in browser)
63
- - All conversion helpers built-in (no need for `bigint-conversion`)
64
- - Endian-safe, round-trip validated
65
- - Unified types and exports
66
- - No audit vulnerabilities
67
- - Patched and rebuilt native bindings (Node 18+)
68
- - First-class ESM/CJS exports plus browser bundle
69
- - Conversion helpers in-core (no separate `bigint-conversion`)
70
- - Actively maintained by GSKNNFT/CoreFlame
71
-
72
- ## 🔍 Differences from Upstream
73
-
74
- - Rebuilt native bindings with modern Node compatibility
75
- - Scoped under `@gsknnft` for audit clarity
76
- - Uses `cpy-cli` instead of deprecated `cpx`
77
- - Rollup-based bundling for ESM/CJS duality
78
- - Peer dependency alignment and reproducibility guarantees
79
-
80
- ---
81
-
82
- ## Install
83
- ```bash
84
- pnpm add @gsknnft/bigint-buffer
85
- # or npm/yarn
86
- ```
87
-
88
- ---
89
-
90
- ## Quick Start
91
- ```ts
92
- import {
93
- toBigIntBE, toBigIntLE, toBufferBE, toBufferLE,
94
- bigintToBuf, bufToBigint, bigintToHex, hexToBigint,
95
- bigintToText, textToBigint, bigintToBase64, base64ToBigint
96
- } from '@gsknnft/bigint-buffer';
97
-
98
- toBigIntBE(Buffer.from('deadbeef', 'hex')); // 3735928559n
99
- toBufferLE(0xdeadbeefn, 6); // <Buffer ef be ad de 00 00>
100
- bigintToHex(123456789n); // "075bcd15"
101
- textToBigint('Hello'); // 0x48656c6c6f
102
- bigintToBase64(123456789n); // "B1vNFQ=="
103
- ```
104
-
105
- ---
106
-
107
- ### 🚀 Advanced Conversion Utilities (Built-In)
108
-
109
- Need only the conversion helpers?
110
- ## Usage
111
-
112
- ### Classic Buffer/BigInt API
113
-
114
- ```js
115
- import { toBigIntLE, toBigIntBE, toBufferLE, toBufferBE } from '@gsknnft/bigint-buffer';
116
-
117
- const bigInt = toBigIntBE(Buffer.from('deadbeef', 'hex'));
118
- const buf = toBufferLE(123456789n, 8);
119
- ```
120
-
121
- ```ts
122
- import { conversionUtils } from '@gsknnft/bigint-buffer';
123
-
124
- // TypedArray, ArrayBuffer, hex/text/base64 helpers
125
- const arrBuf = conversionUtils.bigintToBuf(123456789n, true); // ArrayBuffer
126
- const hex = conversionUtils.bigintToHex(123456789n, true); // '0x...' format
127
- const text = conversionUtils.bigintToText(123456789n);
128
- ```
129
-
130
- > All conversions are endian-safe, round-trip validated, and available in both Node and browser environments.
131
-
132
- ---
133
-
134
- ### 🧠 Why This Matters
135
-
136
- - ✅ No audit vulnerabilities
137
- - ✅ Native bindings preserved
138
- - ✅ Conversion logic fused directly into the core
139
- - ✅ Unified types and exports
140
- - ✅ No need for `bigint-conversion` or external wrappers
141
-
142
-
143
- ---
144
-
145
- ## Runtime: Native vs JS
146
- - Native binding lives at `build/Release/bigint_buffer.node` and loads automatically.
147
- - Check the path in use:
148
- ```ts
149
- import { isNative } from '@gsknnft/bigint-buffer';
150
- console.log(isNative); // true when native is loaded
151
- ```
152
- - Pure JS fallback stays available for browsers and non-native installs.
153
-
154
- ---
155
-
156
- ## Docs & Types
157
- - Core usage: this README
158
- - Full conversion docs: `src/conversion/docs/` (generated from `bigint-conversion`)
159
- - API: [gsknnft.github.io/bigint-buffer/](https://gsknnft.github.io/bigint-buffer/)
160
- - Types: ship in `dist/*.d.ts`
161
-
162
- ---
163
-
164
- ## Commands
165
-
166
- ```bash
167
- pnpm run build # compile + bundle
168
- pnpm run test # vitest (node + conversion tests)
169
- pnpm run coverage # conversion coverage
170
- pnpm run rebuild:native # rebuild the N-API binding
171
- ```
172
-
173
- ## Benchmarks
174
-
175
- Run benchmarks with:
176
- ```bash
177
- pnpm run benchmark # performance benchmarks
178
- ```
179
-
180
- ---
181
-
182
- ## Modern Testing
183
-
184
- Uses [Vitest](https://vitest.dev) for fast, type-safe tests and coverage:
185
-
186
- ```bash
187
- pnpm run test # run all tests
188
- pnpm run coverage # see coverage report
189
- ```
190
-
191
- ---
192
-
193
- ## API Surface
194
- - Native: `toBigIntBE/LE`, `toBufferBE/LE`, `validateBigIntBuffer`, `isNative`
195
- - Conversion: `bigintToBuf`, `bufToBigint`, `bigintToHex`, `hexToBigint`, `bigintToText`, `textToBigint`, `bigintToBase64`, `base64ToBigint`, `bufToHex`, `hexToBuf`, `textToBuf`, `bufToText`, `parseHex`, `TypedArray`
196
-
197
- All helpers are endian-safe and validated across Node and browser builds.
198
-
199
- ---
200
-
201
- ## Support & Project Status
202
- - Version: 1.4.0
203
- - Maintainer: GSKNNFT/CoreFlame
204
- - Node: ≥18 (native), browser bundle included
205
- - Issues: https://github.com/gsknnft/bigint-buffer/issues
1
+ ![CI](https://github.com/gsknknft/bigint-buffer/actions/workflows/ci.yaml/badge.svg)
2
+ ![Release](https://github.com/gsknknft/bigint-buffer/actions/workflows/release.yaml/badge.svg)
3
+
4
+ # @gsknnft/bigint-buffer
5
+
6
+ Secure BigInt Buffer conversion with native bindings, browser fallbacks, and the `bigint-conversion` helper APIs built in. This is the actively maintained fork of the original `bigint-buffer`.
7
+
8
+ > **Upgrade notice:** Use `@gsknnft/bigint-buffer@1.4.3+` for verified bindings, fresh CI, and npm-based workflows across Node 18–24.
9
+
10
+ [![NPM Version](https://img.shields.io/npm/v/@gsknnft/bigint-buffer.svg?style=flat-square)](https://www.npmjs.com/package/@gsknnft/bigint-buffer)
11
+ [![Node Version](https://img.shields.io/node/v/@gsknnft/bigint-buffer.svg?style=flat-square)](https://nodejs.org)
12
+
13
+ ---
14
+
15
+ ## Why This Package
16
+ - Native N-API binding with pure-JS fallback for browsers and constrained environments.
17
+ - Conversion helpers from `bigint-conversion` in-core (no extra deps).
18
+ - ESM and CJS exports plus a UMD/browser bundle.
19
+ - Actively maintained; legacy `bigint-buffer` is deprecated and flagged by audits.
20
+
21
+ ---
22
+
23
+ ## Install
24
+ ```bash
25
+ npm install @gsknnft/bigint-buffer
26
+ # or pnpm/yarn if preferred
27
+ ```
28
+
29
+ ---
30
+
31
+ ## Quick Start
32
+ ```ts
33
+ import {
34
+ toBigIntBE, toBigIntLE, toBufferBE, toBufferLE,
35
+ bigintToBuf, bufToBigint, bigintToHex, hexToBigint,
36
+ bigintToText, textToBigint, bigintToBase64, base64ToBigint,
37
+ } from "@gsknnft/bigint-buffer";
38
+
39
+ toBigIntBE(Buffer.from("deadbeef", "hex")); // 3735928559n
40
+ toBufferLE(0xdeadbeefn, 6); // <Buffer ef be ad de 00 00>
41
+ bigintToHex(123456789n); // "075bcd15"
42
+ textToBigint("Hello"); // 0x48656c6c6f
43
+ bigintToBase64(123456789n); // "B1vNFQ=="
44
+ ```
45
+
46
+ ### Conversion Utilities
47
+ ```ts
48
+ import { conversionUtils } from "@gsknnft/bigint-buffer";
49
+
50
+ const arrBuf = conversionUtils.bigintToBuf(123456789n, true); // ArrayBuffer
51
+ const hex = conversionUtils.bigintToHex(123456789n, true); // '0x...' format
52
+ const text = conversionUtils.bigintToText(123456789n);
53
+ ```
54
+
55
+ ---
56
+
57
+ ## Runtime
58
+ - Native binary: `build/Release/bigint_buffer.node` (loads automatically when available).
59
+ - Fallback: pure JS bundle for browser and non-native installs.
60
+ - Check which path loaded:
61
+ ```ts
62
+ import { isNative } from "@gsknnft/bigint-buffer";
63
+ console.log(isNative); // true when native binding is active
64
+ ```
65
+
66
+ ---
67
+
68
+ ## Commands
69
+ ```bash
70
+ npm run build # bundle + declarations + type check
71
+ npm test # vitest with coverage
72
+ npm run test:node # mocha against built JS (after build/compile)
73
+ npm run rebuild:native # rebuild the N-API binding
74
+ ```
75
+
76
+ ---
77
+
78
+ ## API Surface (high level)
79
+ - Core: `toBigIntBE/LE`, `toBufferBE/LE`, `validateBigIntBuffer`, `isNative`
80
+ - Conversion: `bigintToBuf`, `bufToBigint`, `bigintToHex`, `hexToBigint`, `bigintToText`, `textToBigint`, `bigintToBase64`, `base64ToBigint`, `bufToHex`, `hexToBuf`, `textToBuf`, `bufToText`, `parseHex`
81
+
82
+ All helpers are endian-safe and validated across Node and browser builds.
83
+
84
+ ---
85
+
86
+ ## Support
87
+ - Version: 1.4.3
88
+ - Node: 18+ (tested through 24 LTS)
89
+ - Issues: https://github.com/gsknnft/bigint-buffer/issues
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
@@ -0,0 +1,11 @@
1
+ <?xml version="1.0" encoding="utf-8"?>
2
+ <Project>
3
+ <ProjectOutputs>
4
+ <ProjectOutput>
5
+ <FullPath>C:\Users\G\Desktop\Builds\bigint-buffer\build\Release\bigint_buffer.node</FullPath>
6
+ </ProjectOutput>
7
+ </ProjectOutputs>
8
+ <ContentFiles />
9
+ <SatelliteDlls />
10
+ <NonRecipeFileRefs />
11
+ </Project>
@@ -0,0 +1,2 @@
1
+ C:\Users\G\Desktop\Builds\bigint-buffer\src\bigint-buffer.c;C:\Users\G\Desktop\Builds\bigint-buffer\build\Release\obj\bigint_buffer\src\bigint-buffer.obj
2
+ C:\Users\G\.nvm\versions\node\v24.10.0\bin\node_modules\npm\node_modules\node-gyp\src\win_delay_load_hook.cc;C:\Users\G\Desktop\Builds\bigint-buffer\build\Release\obj\bigint_buffer\win_delay_load_hook.obj
@@ -0,0 +1,2 @@
1
+ PlatformToolSet=v143:VCToolArchitecture=Native64Bit:VCToolsVersion=14.44.35207:TargetPlatformVersion=10.0.26100.0:
2
+ Release|x64|C:\Users\G\Desktop\Builds\bigint-buffer\build\|
@@ -0,0 +1,5 @@
1
+ ^C:\USERS\G\DESKTOP\BUILDS\BIGINT-BUFFER\BUILD\RELEASE\OBJ\BIGINT_BUFFER\SRC\BIGINT-BUFFER.OBJ|C:\USERS\G\DESKTOP\BUILDS\BIGINT-BUFFER\BUILD\RELEASE\OBJ\BIGINT_BUFFER\WIN_DELAY_LOAD_HOOK.OBJ
2
+ C:\Users\G\Desktop\Builds\bigint-buffer\build\Release\bigint_buffer.LIB
3
+ C:\Users\G\Desktop\Builds\bigint-buffer\build\Release\bigint_buffer.EXP
4
+ C:\Users\G\Desktop\Builds\bigint-buffer\build\Release\bigint_buffer.IPDB
5
+ C:\Users\G\Desktop\Builds\bigint-buffer\build\Release\bigint_buffer.IOBJ
@@ -0,0 +1,148 @@
1
+ <?xml version="1.0" encoding="utf-8"?>
2
+ <Project DefaultTargets="Build" ToolsVersion="14.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
3
+ <ItemGroup Label="ProjectConfigurations">
4
+ <ProjectConfiguration Include="Debug|x64">
5
+ <Configuration>Debug</Configuration>
6
+ <Platform>x64</Platform>
7
+ </ProjectConfiguration>
8
+ <ProjectConfiguration Include="Release|x64">
9
+ <Configuration>Release</Configuration>
10
+ <Platform>x64</Platform>
11
+ </ProjectConfiguration>
12
+ </ItemGroup>
13
+ <PropertyGroup Label="Globals">
14
+ <ProjectGuid>{24113E9C-F3B8-A9AC-DC29-9757A019F33F}</ProjectGuid>
15
+ <Keyword>Win32Proj</Keyword>
16
+ <RootNamespace>bigint_buffer</RootNamespace>
17
+ <IgnoreWarnCompileDuplicatedFilename>true</IgnoreWarnCompileDuplicatedFilename>
18
+ <PreferredToolArchitecture>x64</PreferredToolArchitecture>
19
+ <WindowsTargetPlatformVersion>10.0.26100.0</WindowsTargetPlatformVersion>
20
+ </PropertyGroup>
21
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props"/>
22
+ <PropertyGroup Label="Configuration">
23
+ <ConfigurationType>DynamicLibrary</ConfigurationType>
24
+ </PropertyGroup>
25
+ <PropertyGroup Label="Locals">
26
+ <PlatformToolset>v143</PlatformToolset>
27
+ </PropertyGroup>
28
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props"/>
29
+ <Import Project="$(VCTargetsPath)\BuildCustomizations\masm.props"/>
30
+ <ImportGroup Label="ExtensionSettings"/>
31
+ <ImportGroup Label="PropertySheets">
32
+ <Import Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props"/>
33
+ </ImportGroup>
34
+ <PropertyGroup Label="UserMacros"/>
35
+ <PropertyGroup>
36
+ <ExecutablePath>$(ExecutablePath);$(MSBuildProjectDirectory)\..\bin\;$(MSBuildProjectDirectory)\..\bin\</ExecutablePath>
37
+ <IgnoreImportLibrary>true</IgnoreImportLibrary>
38
+ <IntDir>$(Configuration)\obj\$(ProjectName)\</IntDir>
39
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|x64'">false</LinkIncremental>
40
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</LinkIncremental>
41
+ <OutDir>$(SolutionDir)$(Configuration)\</OutDir>
42
+ <TargetExt Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">.node</TargetExt>
43
+ <TargetExt Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">.node</TargetExt>
44
+ <TargetExt Condition="'$(Configuration)|$(Platform)'=='Release|x64'">.node</TargetExt>
45
+ <TargetExt Condition="'$(Configuration)|$(Platform)'=='Release|x64'">.node</TargetExt>
46
+ <TargetName>$(ProjectName)</TargetName>
47
+ <TargetPath>$(OutDir)\$(ProjectName).node</TargetPath>
48
+ </PropertyGroup>
49
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
50
+ <ClCompile>
51
+ <AdditionalIncludeDirectories>C:\Users\G\AppData\Local\node-gyp\Cache\24.10.0\include\node;C:\Users\G\AppData\Local\node-gyp\Cache\24.10.0\src;C:\Users\G\AppData\Local\node-gyp\Cache\24.10.0\deps\openssl\config;C:\Users\G\AppData\Local\node-gyp\Cache\24.10.0\deps\openssl\openssl\include;C:\Users\G\AppData\Local\node-gyp\Cache\24.10.0\deps\uv\include;C:\Users\G\AppData\Local\node-gyp\Cache\24.10.0\deps\zlib;C:\Users\G\AppData\Local\node-gyp\Cache\24.10.0\deps\v8\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
52
+ <AdditionalOptions>/Zc:__cplusplus -std:c++20 /Zm2000 %(AdditionalOptions)</AdditionalOptions>
53
+ <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
54
+ <BufferSecurityCheck>true</BufferSecurityCheck>
55
+ <DebugInformationFormat>OldStyle</DebugInformationFormat>
56
+ <DisableSpecificWarnings>4351;4355;4800;4251;4275;4244;4267;%(DisableSpecificWarnings)</DisableSpecificWarnings>
57
+ <ExceptionHandling>false</ExceptionHandling>
58
+ <MinimalRebuild>false</MinimalRebuild>
59
+ <MultiProcessorCompilation>true</MultiProcessorCompilation>
60
+ <OmitFramePointers>false</OmitFramePointers>
61
+ <Optimization>Disabled</Optimization>
62
+ <PrecompiledHeader>NotUsing</PrecompiledHeader>
63
+ <PreprocessorDefinitions>NODE_GYP_MODULE_NAME=bigint_buffer;USING_UV_SHARED=1;USING_V8_SHARED=1;V8_DEPRECATION_WARNINGS=1;_GLIBCXX_USE_CXX11_ABI=1;_FILE_OFFSET_BITS=64;WIN32;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE;_HAS_EXCEPTIONS=0;NOMINMAX;OPENSSL_NO_PINSHARED;OPENSSL_THREADS;BUILDING_NODE_EXTENSION;HOST_BINARY=&quot;node.exe&quot;;DEBUG;_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
64
+ <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
65
+ <StringPooling>true</StringPooling>
66
+ <SuppressStartupBanner>true</SuppressStartupBanner>
67
+ <TreatWarningAsError>false</TreatWarningAsError>
68
+ <WarningLevel>Level3</WarningLevel>
69
+ <WholeProgramOptimization>true</WholeProgramOptimization>
70
+ </ClCompile>
71
+ <Lib>
72
+ <AdditionalOptions>/LTCG:INCREMENTAL %(AdditionalOptions)</AdditionalOptions>
73
+ </Lib>
74
+ <Link>
75
+ <AdditionalDependencies>kernel32.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;delayimp.lib;&quot;C:\\Users\\G\\AppData\\Local\\node-gyp\\Cache\\24.10.0\\x64\\node.lib&quot;</AdditionalDependencies>
76
+ <AdditionalOptions>/LTCG:INCREMENTAL /ignore:4199 %(AdditionalOptions)</AdditionalOptions>
77
+ <DelayLoadDLLs>node.exe;%(DelayLoadDLLs)</DelayLoadDLLs>
78
+ <EnableCOMDATFolding>true</EnableCOMDATFolding>
79
+ <GenerateDebugInformation>true</GenerateDebugInformation>
80
+ <OptimizeReferences>true</OptimizeReferences>
81
+ <OutputFile>$(OutDir)$(ProjectName).node</OutputFile>
82
+ <SuppressStartupBanner>true</SuppressStartupBanner>
83
+ <TargetExt>.node</TargetExt>
84
+ <TargetMachine>MachineX64</TargetMachine>
85
+ </Link>
86
+ <ResourceCompile>
87
+ <AdditionalIncludeDirectories>C:\Users\G\AppData\Local\node-gyp\Cache\24.10.0\include\node;C:\Users\G\AppData\Local\node-gyp\Cache\24.10.0\src;C:\Users\G\AppData\Local\node-gyp\Cache\24.10.0\deps\openssl\config;C:\Users\G\AppData\Local\node-gyp\Cache\24.10.0\deps\openssl\openssl\include;C:\Users\G\AppData\Local\node-gyp\Cache\24.10.0\deps\uv\include;C:\Users\G\AppData\Local\node-gyp\Cache\24.10.0\deps\zlib;C:\Users\G\AppData\Local\node-gyp\Cache\24.10.0\deps\v8\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
88
+ <PreprocessorDefinitions>NODE_GYP_MODULE_NAME=bigint_buffer;USING_UV_SHARED=1;USING_V8_SHARED=1;V8_DEPRECATION_WARNINGS=1;_GLIBCXX_USE_CXX11_ABI=1;_FILE_OFFSET_BITS=64;WIN32;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE;_HAS_EXCEPTIONS=0;NOMINMAX;OPENSSL_NO_PINSHARED;OPENSSL_THREADS;BUILDING_NODE_EXTENSION;HOST_BINARY=&quot;node.exe&quot;;DEBUG;_DEBUG;%(PreprocessorDefinitions);%(PreprocessorDefinitions)</PreprocessorDefinitions>
89
+ </ResourceCompile>
90
+ </ItemDefinitionGroup>
91
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
92
+ <ClCompile>
93
+ <AdditionalIncludeDirectories>C:\Users\G\AppData\Local\node-gyp\Cache\24.10.0\include\node;C:\Users\G\AppData\Local\node-gyp\Cache\24.10.0\src;C:\Users\G\AppData\Local\node-gyp\Cache\24.10.0\deps\openssl\config;C:\Users\G\AppData\Local\node-gyp\Cache\24.10.0\deps\openssl\openssl\include;C:\Users\G\AppData\Local\node-gyp\Cache\24.10.0\deps\uv\include;C:\Users\G\AppData\Local\node-gyp\Cache\24.10.0\deps\zlib;C:\Users\G\AppData\Local\node-gyp\Cache\24.10.0\deps\v8\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
94
+ <AdditionalOptions>/Zc:__cplusplus -std:c++20 /Zm2000 %(AdditionalOptions)</AdditionalOptions>
95
+ <BufferSecurityCheck>true</BufferSecurityCheck>
96
+ <DebugInformationFormat>OldStyle</DebugInformationFormat>
97
+ <DisableSpecificWarnings>4351;4355;4800;4251;4275;4244;4267;%(DisableSpecificWarnings)</DisableSpecificWarnings>
98
+ <ExceptionHandling>false</ExceptionHandling>
99
+ <FavorSizeOrSpeed>Speed</FavorSizeOrSpeed>
100
+ <FunctionLevelLinking>true</FunctionLevelLinking>
101
+ <InlineFunctionExpansion>AnySuitable</InlineFunctionExpansion>
102
+ <IntrinsicFunctions>true</IntrinsicFunctions>
103
+ <MultiProcessorCompilation>true</MultiProcessorCompilation>
104
+ <OmitFramePointers>true</OmitFramePointers>
105
+ <Optimization>Full</Optimization>
106
+ <PrecompiledHeader>NotUsing</PrecompiledHeader>
107
+ <PreprocessorDefinitions>NODE_GYP_MODULE_NAME=bigint_buffer;USING_UV_SHARED=1;USING_V8_SHARED=1;V8_DEPRECATION_WARNINGS=1;_GLIBCXX_USE_CXX11_ABI=1;_FILE_OFFSET_BITS=64;WIN32;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE;_HAS_EXCEPTIONS=0;NOMINMAX;OPENSSL_NO_PINSHARED;OPENSSL_THREADS;BUILDING_NODE_EXTENSION;HOST_BINARY=&quot;node.exe&quot;;%(PreprocessorDefinitions)</PreprocessorDefinitions>
108
+ <RuntimeLibrary>MultiThreaded</RuntimeLibrary>
109
+ <RuntimeTypeInfo>false</RuntimeTypeInfo>
110
+ <StringPooling>true</StringPooling>
111
+ <SuppressStartupBanner>true</SuppressStartupBanner>
112
+ <TreatWarningAsError>false</TreatWarningAsError>
113
+ <WarningLevel>Level3</WarningLevel>
114
+ <WholeProgramOptimization>true</WholeProgramOptimization>
115
+ </ClCompile>
116
+ <Lib>
117
+ <AdditionalOptions>/LTCG:INCREMENTAL %(AdditionalOptions)</AdditionalOptions>
118
+ </Lib>
119
+ <Link>
120
+ <AdditionalDependencies>kernel32.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;delayimp.lib;&quot;C:\\Users\\G\\AppData\\Local\\node-gyp\\Cache\\24.10.0\\x64\\node.lib&quot;</AdditionalDependencies>
121
+ <AdditionalOptions>/LTCG:INCREMENTAL /ignore:4199 %(AdditionalOptions)</AdditionalOptions>
122
+ <DelayLoadDLLs>node.exe;%(DelayLoadDLLs)</DelayLoadDLLs>
123
+ <EnableCOMDATFolding>true</EnableCOMDATFolding>
124
+ <GenerateDebugInformation>true</GenerateDebugInformation>
125
+ <OptimizeReferences>true</OptimizeReferences>
126
+ <OutputFile>$(OutDir)$(ProjectName).node</OutputFile>
127
+ <SuppressStartupBanner>true</SuppressStartupBanner>
128
+ <TargetExt>.node</TargetExt>
129
+ <TargetMachine>MachineX64</TargetMachine>
130
+ </Link>
131
+ <ResourceCompile>
132
+ <AdditionalIncludeDirectories>C:\Users\G\AppData\Local\node-gyp\Cache\24.10.0\include\node;C:\Users\G\AppData\Local\node-gyp\Cache\24.10.0\src;C:\Users\G\AppData\Local\node-gyp\Cache\24.10.0\deps\openssl\config;C:\Users\G\AppData\Local\node-gyp\Cache\24.10.0\deps\openssl\openssl\include;C:\Users\G\AppData\Local\node-gyp\Cache\24.10.0\deps\uv\include;C:\Users\G\AppData\Local\node-gyp\Cache\24.10.0\deps\zlib;C:\Users\G\AppData\Local\node-gyp\Cache\24.10.0\deps\v8\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
133
+ <PreprocessorDefinitions>NODE_GYP_MODULE_NAME=bigint_buffer;USING_UV_SHARED=1;USING_V8_SHARED=1;V8_DEPRECATION_WARNINGS=1;_GLIBCXX_USE_CXX11_ABI=1;_FILE_OFFSET_BITS=64;WIN32;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE;_HAS_EXCEPTIONS=0;NOMINMAX;OPENSSL_NO_PINSHARED;OPENSSL_THREADS;BUILDING_NODE_EXTENSION;HOST_BINARY=&quot;node.exe&quot;;%(PreprocessorDefinitions);%(PreprocessorDefinitions)</PreprocessorDefinitions>
134
+ </ResourceCompile>
135
+ </ItemDefinitionGroup>
136
+ <ItemGroup>
137
+ <None Include="..\binding.gyp"/>
138
+ </ItemGroup>
139
+ <ItemGroup>
140
+ <ClCompile Include="..\src\bigint-buffer.c">
141
+ <ObjectFileName>$(IntDir)\src\bigint-buffer.obj</ObjectFileName>
142
+ </ClCompile>
143
+ <ClCompile Include="C:\Users\G\.nvm\versions\node\v24.10.0\bin\node_modules\npm\node_modules\node-gyp\src\win_delay_load_hook.cc"/>
144
+ </ItemGroup>
145
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets"/>
146
+ <Import Project="$(VCTargetsPath)\BuildCustomizations\masm.targets"/>
147
+ <ImportGroup Label="ExtensionTargets"/>
148
+ </Project>
@@ -0,0 +1,64 @@
1
+ <?xml version="1.0" encoding="utf-8"?>
2
+ <Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
3
+ <ItemGroup>
4
+ <Filter Include="..">
5
+ <UniqueIdentifier>{739DB09A-CC57-A953-A6CF-F64FA08E4FA7}</UniqueIdentifier>
6
+ </Filter>
7
+ <Filter Include="..\src">
8
+ <UniqueIdentifier>{8CDEE807-BC53-E450-C8B8-4DEBB66742D4}</UniqueIdentifier>
9
+ </Filter>
10
+ <Filter Include="C:">
11
+ <UniqueIdentifier>{7B735499-E5DD-1C2B-6C26-70023832A1CF}</UniqueIdentifier>
12
+ </Filter>
13
+ <Filter Include="C:\Users">
14
+ <UniqueIdentifier>{E9F714C1-DA89-54E2-60CF-39FEB20BF756}</UniqueIdentifier>
15
+ </Filter>
16
+ <Filter Include="C:\Users\G">
17
+ <UniqueIdentifier>{23A9C368-CAF8-ECEE-DD21-DEE90AB396A0}</UniqueIdentifier>
18
+ </Filter>
19
+ <Filter Include="C:\Users\G\.nvm">
20
+ <UniqueIdentifier>{AFF1D634-CEB4-AB84-6F2B-67411B4ED438}</UniqueIdentifier>
21
+ </Filter>
22
+ <Filter Include="C:\Users\G\.nvm\versions">
23
+ <UniqueIdentifier>{5046B952-1CAB-039C-D90D-60A29141CDC8}</UniqueIdentifier>
24
+ </Filter>
25
+ <Filter Include="C:\Users\G\.nvm\versions\node">
26
+ <UniqueIdentifier>{A49AD564-6B22-6A46-08E5-B5A7F4427839}</UniqueIdentifier>
27
+ </Filter>
28
+ <Filter Include="C:\Users\G\.nvm\versions\node\v24.10.0">
29
+ <UniqueIdentifier>{D84B0334-5C84-7460-16B1-B7285A554182}</UniqueIdentifier>
30
+ </Filter>
31
+ <Filter Include="C:\Users\G\.nvm\versions\node\v24.10.0\bin">
32
+ <UniqueIdentifier>{11CC0371-6539-7E04-3B24-030E187A74AC}</UniqueIdentifier>
33
+ </Filter>
34
+ <Filter Include="C:\Users\G\.nvm\versions\node\v24.10.0\bin\node_modules">
35
+ <UniqueIdentifier>{56DF7A98-063D-FB9D-485C-089023B4C16A}</UniqueIdentifier>
36
+ </Filter>
37
+ <Filter Include="C:\Users\G\.nvm\versions\node\v24.10.0\bin\node_modules\npm">
38
+ <UniqueIdentifier>{741E0E76-39B2-B1AB-9FA1-F1A20B16F295}</UniqueIdentifier>
39
+ </Filter>
40
+ <Filter Include="C:\Users\G\.nvm\versions\node\v24.10.0\bin\node_modules\npm\node_modules">
41
+ <UniqueIdentifier>{56DF7A98-063D-FB9D-485C-089023B4C16A}</UniqueIdentifier>
42
+ </Filter>
43
+ <Filter Include="C:\Users\G\.nvm\versions\node\v24.10.0\bin\node_modules\npm\node_modules\node-gyp">
44
+ <UniqueIdentifier>{77348C0E-2034-7791-74D5-63C077DF5A3B}</UniqueIdentifier>
45
+ </Filter>
46
+ <Filter Include="C:\Users\G\.nvm\versions\node\v24.10.0\bin\node_modules\npm\node_modules\node-gyp\src">
47
+ <UniqueIdentifier>{8CDEE807-BC53-E450-C8B8-4DEBB66742D4}</UniqueIdentifier>
48
+ </Filter>
49
+ <Filter Include="..">
50
+ <UniqueIdentifier>{739DB09A-CC57-A953-A6CF-F64FA08E4FA7}</UniqueIdentifier>
51
+ </Filter>
52
+ </ItemGroup>
53
+ <ItemGroup>
54
+ <ClCompile Include="..\src\bigint-buffer.c">
55
+ <Filter>..\src</Filter>
56
+ </ClCompile>
57
+ <ClCompile Include="C:\Users\G\.nvm\versions\node\v24.10.0\bin\node_modules\npm\node_modules\node-gyp\src\win_delay_load_hook.cc">
58
+ <Filter>C:\Users\G\.nvm\versions\node\v24.10.0\bin\node_modules\npm\node_modules\node-gyp\src</Filter>
59
+ </ClCompile>
60
+ <None Include="..\binding.gyp">
61
+ <Filter>..</Filter>
62
+ </None>
63
+ </ItemGroup>
64
+ </Project>
@@ -0,0 +1,19 @@
1
+ Microsoft Visual Studio Solution File, Format Version 12.00
2
+ # Visual Studio 2015
3
+ Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "bigint_buffer", "bigint_buffer.vcxproj", "{24113E9C-F3B8-A9AC-DC29-9757A019F33F}"
4
+ EndProject
5
+ Global
6
+ GlobalSection(SolutionConfigurationPlatforms) = preSolution
7
+ Release|x64 = Release|x64
8
+ Debug|x64 = Debug|x64
9
+ EndGlobalSection
10
+ GlobalSection(ProjectConfigurationPlatforms) = postSolution
11
+ {24113E9C-F3B8-A9AC-DC29-9757A019F33F}.Release|x64.ActiveCfg = Release|x64
12
+ {24113E9C-F3B8-A9AC-DC29-9757A019F33F}.Release|x64.Build.0 = Release|x64
13
+ {24113E9C-F3B8-A9AC-DC29-9757A019F33F}.Debug|x64.ActiveCfg = Debug|x64
14
+ {24113E9C-F3B8-A9AC-DC29-9757A019F33F}.Debug|x64.Build.0 = Debug|x64
15
+ EndGlobalSection
16
+ GlobalSection(SolutionProperties) = preSolution
17
+ HideSolutionNode = FALSE
18
+ EndGlobalSection
19
+ EndGlobal