Changelog
All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog
and this project adheres to Semantic Versioning.
v4.0.4 - 2025-07-16
Commits
- [meta] add
auto-changelog
811f682
- [Tests] handle predict-v8-randomness failures in node < 17 and node > 23
1d11a76
- [Fix] Switch to using
crypto
random for boundary values 3d17230
- [Tests] fix linting errors
5e34080
- [meta] actually ensure the readme backup isn’t published
316c82b
- [Dev Deps] update
@ljharb/eslint-config
58c25d7
- [meta] fix readme capitalization
2300ca1
v4.0.3 - 2025-06-05
Fixed
- [Fix]
append
: avoid a crash on nullish values #577
Commits
- [eslint] use a shared config
426ba9a
- [eslint] fix some spacing issues
2094191
- [Refactor] use
hasown
81ab41b
- [Fix] validate boundary type in
setBoundary()
method 8d8e469
- [Tests] add tests to check the behavior of
getBoundary
with non-strings 837b8a1
- [Dev Deps] remove unused deps
870e4e6
- [meta] remove local commit hooks
e6e83cc
- [Dev Deps] update
eslint
4066fd6
- [meta] fix scripts to use prepublishOnly
c4bbb13
v4.0.2 - 2025-02-14
Merged
- [Fix] set
Symbol.toStringTag
when available #573
- [Fix] set
Symbol.toStringTag
when available #573
- fix (npmignore): ignore temporary build files
#532
- fix (npmignore): ignore temporary build files
#532
Fixed
- [Fix] set
Symbol.toStringTag
when available (#573) #396
- [Fix] set
Symbol.toStringTag
when available (#573) #396
- [Fix] set
Symbol.toStringTag
when available #396
Commits
- Merge tags v2.5.3 and v3.0.3
92613b9
- [Tests] migrate from travis to GHA
806eda7
- [Tests] migrate from travis to GHA
8fdb3bc
- [Refactor] use
Object.prototype.hasOwnProperty.call
7fecefe
- [Refactor] use
Object.prototype.hasOwnProperty.call
6e682d4
- [Refactor] use
Object.prototype.hasOwnProperty.call
df3c1e6
- [Dev Deps] update
@types/node
, browserify
, coveralls
, cross-spawn
, eslint
, formidable
, in-publish
, pkgfiles
, pre-commit
, puppeteer
, request
, tape
, typescript
8261fcb
- [Dev Deps] update
@types/node
, browserify
, coveralls
, cross-spawn
, eslint
, formidable
, in-publish
, pkgfiles
, pre-commit
, puppeteer
, request
, tape
, typescript
fb66cb7
- [Dev Deps] update
@types/node
, browserify
, coveralls
, eslint
, formidable
, in-publish
, phantomjs-prebuilt
, pkgfiles
, pre-commit
, request
, tape
, typescript
819f6b7
- [eslint] clean up ignores
3217b3d
- [eslint] clean up ignores
3a9d480
- [Fix]
Buffer.from
and Buffer.alloc
require node 4+ c499f76
- Only apps should have lockfiles
b82f590
- Only apps should have lockfiles
b170ee2
- [Deps] update
combined-stream
, mime-types
6b1ca1d
- [Dev Deps] pin
request
which via tough-cookie
^2.4 depends on psl
e5df7f2
- [Deps] update
mime-types
5a5bafe
- Bumped version 2.5.3
9457283
- [Dev Deps] pin
request
which via tough-cookie
^2.4 depends on psl
9dbe192
- Merge tags v2.5.2 and v3.0.2
d53265d
- Bumped version 2.5.2
7020dd4
- [Dev Deps] downgrade
cross-spawn
3fc1a9b
- fix: move util.isArray to Array.isArray (#564)
edb555a
- fix: move util.isArray to Array.isArray (#564)
10418d1
v4.0.1 - 2024-10-10
Commits
- [Tests] migrate from travis to GHA
757b4e3
- [eslint] clean up ignores
e8f0d80
- fix (npmignore): ignore temporary build files
335ad19
- fix: move util.isArray to Array.isArray
440d3be
v4.0.0 - 2021-02-15
Merged
- Handle custom stream
#382
Commits
v3.0.3 - 2025-02-14
Merged
- [Fix] set
Symbol.toStringTag
when available #573
Fixed
- [Fix] set
Symbol.toStringTag
when available (#573) #396
Commits
- [Refactor] use
Object.prototype.hasOwnProperty.call
7fecefe
- [Dev Deps] update
@types/node
, browserify
, coveralls
, cross-spawn
, eslint
, formidable
, in-publish
, pkgfiles
, pre-commit
, puppeteer
, request
, tape
, typescript
8261fcb
- Only apps should have lockfiles
b82f590
- [Dev Deps] pin
request
which via tough-cookie
^2.4 depends on psl
e5df7f2
- [Deps] update
mime-types
5a5bafe
v3.0.2 - 2024-10-10
Merged
- fix (npmignore): ignore temporary build files
#532
Commits
- [Tests] migrate from travis to GHA
8fdb3bc
- [eslint] clean up ignores
3217b3d
- fix: move util.isArray to Array.isArray (#564)
edb555a
v3.0.1 - 2021-02-15
Merged
- Fix typo: ads -> adds
#451
Commits
- feat: add setBoundary method
55d90ce
v3.0.0 - 2019-11-05
Merged
- Update Readme.md
#449
- Update package.json
#448
- fix memory leak
#447
- form-data: Replaced PhantomJS Dependency
#442
- Fix constructor options in Typescript definitions
#446
- Fix the getHeaders method signatures
#434
- Update combined-stream (fixes #422)
#424
Fixed
- Merge pull request #424 from botgram/update-combined-stream
#422
- Update combined-stream (fixes #422)
#422
Commits
- Add readable stream options to constructor type
80c8f74
- Fixed: getHeaders method signatures
f4ca7f8
- Pass options to constructor if not used with new
4bde68e
- Make userHeaders optional
2b4e478
v2.5.3 - 2025-02-14
Merged
- [Fix] set
Symbol.toStringTag
when available #573
Fixed
- [Fix] set
Symbol.toStringTag
when available (#573) #396
Commits
- [Refactor] use
Object.prototype.hasOwnProperty.call
6e682d4
- [Dev Deps] update
@types/node
, browserify
, coveralls
, eslint
, formidable
, in-publish
, phantomjs-prebuilt
, pkgfiles
, pre-commit
, request
, tape
, typescript
819f6b7
- Only apps should have lockfiles
b170ee2
- [Deps] update
combined-stream
, mime-types
6b1ca1d
- Bumped version 2.5.3
9457283
- [Dev Deps] pin
request
which via tough-cookie
^2.4 depends on psl
9dbe192
v2.5.2 - 2024-10-10
Merged
- fix (npmignore): ignore temporary build files
#532
Commits
- [Tests] migrate from travis to GHA
806eda7
- [eslint] clean up ignores
3a9d480
- [Fix]
Buffer.from
and Buffer.alloc
require node 4+ c499f76
- Bumped version 2.5.2
7020dd4
- [Dev Deps] downgrade
cross-spawn
3fc1a9b
- fix: move util.isArray to Array.isArray (#564)
10418d1
v2.5.1 - 2019-08-28
Merged
- Fix error in callback signatures
#435
- -Fixed: Eerror in the documentations as indicated in #439
#440
- Add constructor options to TypeScript defs
#437
Commits
- Add remaining combined-stream options to typedef
4d41a32
- Bumped version 2.5.1
8ce81f5
- Bump rimraf to 2.7.1
a6bc2d4
v2.5.0 - 2019-07-03
Merged
- - Added: public methods with information and examples to readme
#429
- chore: move @types/node to devDep
#431
- Switched windows tests from AppVeyor to Travis
#430
- feat(typings): migrate TS typings #427
#428
- enhance the method of path.basename, handle undefined case
#421
Commits
- - Added: public methods with information and examples to the readme file.
21323f3
- feat(typings): migrate TS typings
a3c0142
- - Fixed: Typos
37350fa
- Switched to Travis Windows from Appveyor
fc61c73
- - Fixed: rendering of subheaders
e93ed8d
- Updated deps and readme
e3d8628
- Updated dependencies
19add50
- Bumped version to 2.5.0
905f173
- - Fixed: filesize is not a valid option? knownLength should be used for streams
d88f912
- Bump notion of modern node to node8
508b626
- enhance the method of path.basename
faaa68a
v2.4.0 - 2019-06-19
Merged
- Added "getBuffer" method and updated certificates
#419
- docs(readme): add axios integration document
#425
- Allow newer versions of combined-stream
#402
Commits
v2.3.2 - 2018-02-13
Merged
- Pulling in fixed combined-stream
#379
Commits
- All the dev dependencies are breaking in old versions of node :'(
c7dba6a
- Updated badges
19b6c7a
- Try tests in node@4
872a326
- Pull in final version
9d44871
v2.3.1 - 2017-08-24
Commits
- Updated readme with custom options example
8e0a569
- Added support (tests) for node 8
d1d6f4a
v2.3.0 - 2017-08-24
Merged
- Added custom
options
support #368
- Allow form.submit with url string param to use https
#249
- Proper header production
#357
- Fix wrong MIME type in example
#285
Commits
- allow form.submit with url string param to use https
c0390dc
- update tests for url parsing
eec0e80
- Uses for in to assign properties instead of Object.assign
f6854ed
- Adds test to check for option override
61762f2
- Removes the 2mb maxDataSize limitation
dc171c3
- Ignore .DS_Store
e8a05d3
v2.2.0 - 2017-06-11
Merged
- Filename can be a nested path
#355
Commits
v2.1.4 - 2017-04-08
2.1.3 - 2017-04-08
v2.1.3 - 2017-04-08
Merged
- toString should output '[object FormData]'
#346
v2.1.2 - 2016-11-07
Merged
- #271 Added check for self and window objects + tests
#282
Commits
- Added check for self and window objects + tests
c99e4ec
v2.1.1 - 2016-10-03
Merged
- Bumped dependencies.
#270
- Update browser.js shim to use self instead of window
#267
- Boilerplate code rediction
#265
- eslint@3.7.0
#266
Commits
- code duplicates removed
e9239fb
- Changed according to requests
aa99246
- chore(package): update eslint to version 3.7.0
090a859
v2.1.0 - 2016-09-25
Merged
- Added
hasKnownLength
public method #263
Commits
- Added hasKnownLength public method
655b959
v2.0.0 - 2016-09-16
Merged
- Replaced async with asynckit
#258
- Pre-release house cleaning
#247
Commits
- Replaced async with asynckit. Modernized
1749b78
- Ignore .bak files
c08190a
- Trying to be more chatty. :)
c79eabb
v1.0.0 - 2016-08-26
Merged
- Allow custom header fields to be set as an object.
#190
- v1.0.0-rc4
#182
- Avoid undefined variable reference in older browsers
#176
- More housecleaning
#164
- More cleanup
#159
- Added windows testing. Some cleanup.
#158
- Housecleaning. Added test coverage.
#156
- Second iteration of cleanup.
#145
Commits
Merged
- Housecleaning, preparing for the release
#144
- lib: emit error when failing to get length
#127
- Cleaning up for Codacity 2.
#143
- Cleaned up codacity concerns.
#142
- Should throw type error without new operator.
#129
Commits
- More cleanup
94b6565
- Shuffling things around
3c2f172
- Second iteration of cleanup.
347c88e
- Housecleaning
c335610
- More housecleaning
f573321
- Trying to make far run on windows. + cleanup
e426dfc
- Playing with appveyor
c9458a7
- Updated dev dependencies.
ceebe88
- Replaced win-spawn with cross-spawn
405a69e
- Updated readme badges.
12f282a
- Making paths windows friendly.
f4bddc5
- [WIP] trying things for greater sanity
8ad1f02
- Bending under Codacy
bfff3bb
- Another attempt to make windows friendly
f3eb628
- Updated dependencies.
f73996e
- Missed travis changes.
67ee79f
- Restructured badges.
48444a1
- Add similar type error as the browser for attempting to use form-data without new.
5711320
- Took out codeclimate-test-reporter
a7e0c65
- One more
8e84cff
Merged
- House cleaning. Added
pre-commit
. #140
- Allow custom content-type without setting a filename.
#138
- Add node-fetch to alternative submission methods.
#132
- Update dependencies
#130
- Switching to container based TravisCI
#136
- Default content-type to 'application/octect-stream'
#128
- Allow filename as third option of .append
#125
Commits
- Allow custom content-type without setting a filename
c8a77cc
- Fixed ranged test.
a5ac58c
- Allow filename as third option of #append
d081005
- Allow custom content-type without setting a filename
8cb9709
Merged
- #109 Append proper line break
#123
- Add shim for browser (browserify/webpack).
#122
- Update license field
#115
Commits
Merged
- v1.0.0-rc1
#114
- Updated test targets
#102
- Remove duplicate plus sign
#94
Commits
- Made https test local. Updated deps.
afe1959
- Proper self-signed ssl
4d5ec50
- Update HTTPS handling for modern days
2c11b01
- Made tests more local
09633fa
- Auto create tmp folder for Formidable
28714b7
- remove duplicate plus sign
36e09c6
0.2 - 2014-12-06
Merged
- Bumped version
#96
- Replace mime library.
#95
- #71 Respect bytes range in a read stream.
#73
0.1.4 - 2014-06-23
Merged
- Updated version.
#76
- #71 Respect bytes range in a read stream.
#75
0.1.3 - 2014-06-17
Merged
- Updated versions.
#69
- Added custom headers support
#60
- Added test for Request. Small fixes.
#56
Commits
- Added test for the custom header functionality
bd50685
- Documented custom headers option
77a024a
- Removed 0.6 support.
aee8dce
0.1.2 - 2013-10-02
Merged
- Fixed default https port assignment, added tests.
#52
- #45 Added tests for multi-submit. Updated readme.
#49
- #47 return request from .submit()
#48
Commits
0.1.1 - 2013-08-21
Merged
- Added license type and reference to package.json
#46
Commits
0.1.0 - 2013-07-08
Merged
- Update master to 0.1.0
#44
- 0.1.0 - Added error handling. Streamlined edge cases behavior.
#43
- Pointed badges back to mothership.
#39
- Updated node-fake to support 0.11 tests.
#37
- Updated tests to play nice with 0.10
#36
- #32 Added .npmignore
#34
- Spring cleaning
#30
Commits
- Added error handling. Streamlined edge cases behavior.
4da496e
- Made tests more deterministic.
7fc009b
- Fixed styling.
d373b41
- #40 Updated Readme.md regarding getLengthSync()
efb373f
- Updated readme.
527e3a6
0.0.10 - 2013-05-08
Commits
- Updated tests to play nice with 0.10.
932b39b
- Added dependency tracking.
3131d7f
0.0.9 - 2013-04-29
Merged
- Custom params for form.submit() should cover most edge cases.
#22
- Updated Readme and version number.
#20
- Allow custom headers and pre-known length in parts
#17
- Bumped version number.
#12
- Fix for #10
#11
- Bumped version number.
#8
- Added support for https destination, http-response and mikeal's request streams.
#7
- Updated git url.
#6
- Version bump.
#5
- Changes to support custom content-type and getLengthSync.
#4
- make .submit(url) use host from url, not 'localhost'
#2
- Make package.json JSON
#1
Fixed
Commits
- Spring cleaning.
850ba1b
- Added custom request params to form.submit(). Made tests more stable.
de3502f
- Basic form (no files) working
6ffdc34
- Got initial test to pass
9a59d08
- Implement initial getLength
9060c91
- Make getLength work with file streams
6f6b1e9
- Implemented a simplistic submit() function
41e9cc1
- added test for custom headers and content-length in parts (felixge/node-form-data/17)
b16d14e
- Fixed code styling.
5847424
- #29 Added custom filename and content-type options to support identity-less streams.
adf8b4a
- Initial Readme and package.json
8c744e5
- allow append() to completely override header and boundary
3fb2ad4
- Syntax highlighting
ab3a6a5
- Updated Readme.md
de8f441
- Added examples to Readme file.
c406ac9
- pass options.knownLength to set length at beginning, w/o waiting for async size calculation
e2ac039
- Updated dependencies and added test command.
09bd7cd
- Bumped version. Updated readme.
4581140
- Test runner
1707ebb
- Added .npmignore, bumped version.
2e033e0
- FormData.prototype.append takes and passes along options (for header)
b519203
- Make package.json JSON
bf1b58d
- Add dependencies to package.json
7413d0b
- Add convenient submit() interface
55855e4
- Fix content type
08b6ae3
- Combatting travis rvm calls.
409adfd
- Fixed Issue #2
b3a5d66
- Fix for #10.
bab70b9
- Trying workarounds for formidable - 0.6 "love".
25782a3
- change whitespace to conform with felixge's style guide
9fa34f4
- Add async to deps
b7d1a6b
- typo
7860a9c
- Bumped version.
fa36c1b
- Updated .gitignore
de567bd
- Don't rely on resume() being called by pipe
1deae47
- One more wrong content type
28f166d
- Another typo
b959b6a
- Typo
698fa0a
- Being simply dumb.
b614db8
- Fixed typo in the filename.
30af6be