Releases: gost-dom/browser
Releases · gost-dom/browser
Release v0.11.0
- 5fad72f chore(release): 0.11.0
- d65f3bc test: Verify some standard HTML form post behaviour
- bbaee26 Create testing middleware that logs to test log
- 65a3764 Verify test constructor data
- c77d39b Implement JavaScript Text constructor
- 8a96e02 Add a bit of defensive coding
- 6f6043d Document *Clock.stack field
- faf3938 Remove potentially ignoring resolved modules
- 0cc3b9f Handle non-error export
- 669fbc1 Remove commented code
- 4be6c0c fix: Fix race condition
- b8b32c3 test(wpt): Remove unnecessary helper function
- a4a6977 Extract fetching manifest
- 22e448a test(wpt): Remove unused type
- 13ae842 test(wpt): Increase max concurrent tests
- 27dfddf test(wpt): Refactor wait group
- 2cdd973 Replace returned error channel with a cancelCause argument
- 5dc2a15 test(wpt): Better handling of JSON parse errors
- 22bb38f test(wpt): Scale test concurrency to CPU count
- 637bde0 fix: Handle JavaScript event handler returning "false"
- 059e373 Change default any encoder to codec.EncodeAny
- b6f9719 Change default any decoder to codec.DecodeAny
- bd41f16 Rename AddMicrotask -> QueueMicrotask
- 209feb3 Simplify decode generator
- d79cc5c Fix error return value being ignored
- 48a472b Rename Enqueue to Queue
- 500ae7f Remove commented code
- 64225bc Refactor generator to respect HasError for custom Go types
- 7aa7c06 Remove bad wrapper ignoring errors
- 23d0a40 Consolidate task handle types
- d6d8439 Remove duplicate functions
- a03b6d3 Consolidate Clock interface
- 8f86ed9 Remove Clock from ScriptContext interface
- 42c811e Replace timeout functions with generated versions
- 24e7f8e Add WindowOrWorkerGlobalScope
- 6c68d69 Handle tick() errors
- ce346e6 Change Content-Type from Add to Set call
- 95980a5 Improve cookie handling
- 0ab1b08 Fix potential panic on tick
- 85279e5 Remove commented code
- a660f88 Fix content type set in browsertest
- 72bc34f Remove dependency to deprecated New
- 183ead5 Refactor XHR tests
- e564e90 Refactor fetch test
- e832d1b Update documentation to explain experimental code will be removed
- 69aa0cb Remove duplicate assert
- 64e93b4 Fix typos
- 12e8fd0 Consolidate test suite
- 65c34c6 refactor: Move responsibility of clock creation
- 8f2b412 Simplify requestAnimationFrame test
- 93f262f test: Decouple test from implementation details
- ec8cc8f Fix typo in comments
- fef365d Improve documentation of "factory"
- f645f27 Refactor codegen of installers
- 6d228c4 Don't create empty realm configuration function
- f20a715 Close files after writing
- 5a519f3 Improve error message
- 319e04d Remove unnecessary wrapper
- 3808743 Improve code doc comments
- 799b54f Fix Document and Element exposed to Worker scopes
- ef0e099 Fix codedoc typo
- c7a9a2d refactor(code-gen): Centralise spec-order behaviour
- dd7e6c2 Document the simple package dependency analysis
- 2c97784 Simplify CreateClass implementation
- 58d4d8f Simplify partial and global registration
- c5cf080 Replace bulk of Window realm configuration with generated code
- acf14ae Autogenerate window registration
- c92aedd Refactor spec sorting
- f500eb4 Auto-generate combined script engine registration
- b94e5e4 Create DedicatedWorker configuration functions
- f57d56f Iterate through scopes
- 9c0413e Rename registration function to reflect Window realm
- 8f032c5 Improve error handling of unexpected iterables
- e04b4c8 Remove print statement
- c4b09dd Fix doc comments
- a17bd2d Update doc comments for removed argument
- 9fb97ff Add documentation for new InstallIterator functions
- ff6a34e Remove dead code
- 6d2bc87 Add documentation for EncodeAny/DecodeAny
- 058960b Fix incomplete package docs
- 0f9245a Simplify lookup
- f2448e1 Remove unused partial spec lookup
- 4ffc10e Extract installHtmlElementType
- 9648fdc Generate CustomEvent
- 2a06a1c Cleanup DOM registration
- b8167b9 Generate iterator implementations
- 12e7e20 refactor: Create generic entity encoder
- 96fedfb refactor(scripting): Remove unused receiver value
- 53cba7c Extract InstallIterator function
- cd9140d Better decoupling of generated partials
- c0783a5 Create type to represent a realm
- a526992 refactor(codegen): Lookup Global extended attribute
- dc1c747 refactor(codegen): Improve finding global scope
- a3b17b9 ci: Don't force push next branch
- 84d1c3d Fix typo in error message
- c6757f2 Make static/live NodeList creation explicit
- c50a4b9 Remove unnecessary NodeList.SetNodes
- 8fd1db2 Fix potential panics
- a31d082 Remove unused method
- 1bb6022 Add some documentation to NodeList values
- d19c455 Fix index out of bounds
- b77d5e5 refactor: Remove childNodes from node
- 2ff6f37 Document required order of installation
- 90a4aed Fix missing panic message
- c635c71 Remove unnecessary branch
- e88248c Remove unnecessary type parameter
- 53e656f Automatically configure mixins
- 6e77fc9 Remove unused CreateFunction
- 4ee8346 refactor(fetch): Generate 'fetch' method from 'partial interface'
- ad80245 ci: Change "rebase next" to "merge next"
- a0568bc Mark ObjectID as deprecated
- 270b846 refactor: Remove dependency to ObjectID
- 71895a8 Fix typos in error messages
- 584ef23 Fix typo in variable name
- 074a10d Explicitly handle bad conversions, and reduce duplication
- 979f1f8 Add documentation to JsAssert type
- 3ba85bd Improve code comments about workaround
- c880722 fix: Document methods on Document
- 4ab7afd refactor(v8): Reduce duplication
- a7e1aba Remove "panics" from code-gen
- c7beb23 refactor(codegen): Remove "SkipWrapper" field
- edc6d32 Remove unnecessary ReturnWithTypeError
- be2b20c refactor(scripting): Simplify illegal constructor generation
- 62366ae refactor(scripting): Remove empty initializer
- 723d2ca doc: Make clear why all element types are registered
- ea383ed fixup! refactor(codegen): Remove commented code
- b7d0036 refactor(scripting): Simplify creation of HTML element types
- 63dcd51 refactor(codegen): Remove commented code
- ddb4a50 refactor(scripting): Remove dead code
- 94b68ae Remove DOMStringMap wrapper type
- 5eb71c9 refactor(scripting): Remove unnecessary RegisterClass complexity
- 563b705 refactor(codegen): Remove dead code
- a518f36 refactor(codegen): Create "function" type
- cc4ae14 refactor(scripting): Completely remove wrapper type
- a45a212 Remove dependency to wrapper type in registration
- d86e61e Don't use pointers for wrapper types
- 12e9623 Fix ignored error
- 9d2165b Replace attribute callbacks with functions
- 27fed64 Replace focus() with generated version
- 0309bc2 Replace Element.classList with generated version
- 586ad9a Remove unnecessary "default value" functions
- ad7ff4f Replace event.EventPhase with generated version
- 86f575c Replace document.createElement with generated version
- ae64de9 Replace Document.location with generated version
- cef0828 Replace "textContent" with auto-generated
- e5de24f Implement other KeyboardEvent properties
- 2c7637e Remove unused method
- 083d776 Remove duplicate "Illegal constructor"
- c86f310 Remove custom installed Document properties
- 1dffb21 Handle nullish value
- 7347d27 Handle potential nil values
- 70e6656 Fix typo and improve consistency
- 78c255e Remove unused method
- 2577a94 Remove unnecessary wrapper
- 4b30ddb Fix typo
- 8ca26c3 refactor(codegen): Remove unused receiver fields
- f5aac5b refactor: Remove unnecessary illegal constructor
- fb8b5bc Simplify event property attribute getters
- c96a44d Fix hardcoded event types
- 9b7c9c2 Remove dead code
- 52826a8 Generate event field lookups
- cd1fad4 Generate Node.NodeType
- 3775e36 refactor(codegen): Remove duplicate knowledge about installed functions
- 6287e1a refactor(codegen): change "function" to "method"
- 69988c5 Don't make constructors methods
- bded80b Refactor, dont have encodes as methods
- 820663d refactor: Dont have decodes as methods
- 6e280c6 Fix minor issues in Worker test page
- 686f5af Add note about inheritance hierarchy
- 89896e2 Document Event behaviour
- a1308e0 refactor: Join event decode errors
- 4f90c0f Code cleanup
- 6ad62e0 Fix error message
- 261be8a refactor(codegen): Simplify flag usage
- dd279f3 refactor: Move decodeInto to js package
- c35abbb cleanup(codegen): Remove dead code
- 99dd18a Generate event init decoders
- 8c7ccdd cleanup(dom): Remove unused unexported constructor
- 179f83b refactor(codegen): Export enabled events configuration
- 023f7e4 cleanup(codegen): Remove comments and unused field
- 6f44c26 Remove receiver that shadows import statement
- b09398b Remove debug logging
- d9f9b54 Update code docs according to refactorings
- e7faf48 refactor(codegen): Remove dead code
- d98958d Remove unused functions
- 613ca5e Guard against empty inheritance
- b668027 Minor cleanup
- fbcf6d1 Add codedoc for GenerateEventInit
- 846db0f Generate Event type constructors
- 5bc2190 Minor code cleanup
- e133838 Generate KeyboardEventInit
- 2a5fc69 Create EventInit generator
- c971285 Update codegen packages
- aa54ca2 refactor(codegen): Move IdlNameToGoName
- 833de0e Change import alias for consistency
- dbbd851 Fix typo in encoder name
- c8a56e4 test(scripting): Move uievents test suite
- fef479f Remove commented code
- 827c096 refactor(codegen): Remove customization
- 25aa625 Fix incorrect documentation
- 27d9fe4 Create test page for workers
- c66ca49 refactor: Move XHR to
/internal/html/xhr - 8c19dc4 Update readme
- 10dc84f docs: Update code structure
- 0f91bad Update developer docs
- ac8cbc0 Update glossary
- a7bc2cd Simplify readme
- 6a6aa3e Remove unnecessary log statements
- 5d8d571 Replace
errwithnilfor clarity - 1ce4fc9 test: Fix typo
- 74e55c3 refactor: Generate WindowOrWorkerGlo...
Release v0.10.3
- bbfad0b chore(release): 0.10.3
- f289f69 feat: Fix obsolete docs and error messages - thanks: @nickchomey
- 7de1f95 refactor: Fix error message prefixes
- 80428f2 refactor(codegen): Remove obsolete constants
- ef58d79 doc: Finish incomplete sentence
- 4134546 doc: Remove obsolete parts of the documentation
- 95c0c5f test(wpt): Pass options to test runner
- 01d9045 test: Support ReplaceAttr in test logger
- b8f74fb refactor: Extract test logger types to separate files
- 99433cd Minor fixes
- 9118370 Ignore invalid fetch request headers
- de4806e refactor(fetch): Move Headers to separate file
- bbe0263 Handle Get with nil headers
- c7d7089 Wrap original error on iterator error
- 4a800e9 Add script src location to sobek scripts
- e0867ba Improve nullish value handling
- 4173262 Add comment about lack of header validation
- dbde302 feat(scripting/fetch): Support headers option
- 4fc0501 Make sure headers implement [SameObject] idl attribute
- 3fca986 refactor: less error prone struct-in-struct strategy
- 46c7f81 feat(scripting/fetch): Implement Request.Headers
- c4a4a57 fixup! refactor(codegen): Rename ESOperation to Callback
- c0893ee refactor(codegen): Extract rule for string, bool result
- fbc7926 refactor(codegen): Rename ESOperation to Callback
- 90bfb24 refactor(codegen): Better handling of "header" type
- 2d2ab51 test(wpt): Don't parse manifest when loading single file
- f29e6f9 Replace "" with explicit method
- f5b4e7d Remove unnecessary block
- 8401dd6 Remove blank line
- edf7d55 test(wpt): Remove useless else
- c44018e test(wpt): Ignore filter if nil
- 6c85a39 test(wpt): Pass context to test cases
- c324061 test(wpt): use context for cancellation while iterating tests
- 3021b9f test(wpt): Use context for cancellation
- 5865b0c test(wpt): Allow specifying scenarios to run from cmd line
- ab36b1e test(wpt): Extract options parsing
- 009dcd2 test(wpt): Extract filter logic
- 41f0ab6 test(wpt): Extract manifestTestCaseSource
- dcc72f6 Remove nil value for g8values
- 4a6dc0c Remove print statements
- 3814ffc Fix error message names
- 810cdab Create proper IsSymbol implementation for Sobek
- b38ae93 refactor: Move v8 object to new file
- 539f573 refactor: avoid overhead of converting strings to []byte
- c83eb85 Make it explicit that ByteString values are printable chars.
- e5b6754 test(wpt): Defer closing the output file
- d137533 refactor: Extract max header count into a separate function
- 1784d46 Fix Headers.Set when multiple headers have the same name
- efab263 Fix iterating headers
- a7e56b0 refactor: Implement ordered insert
- 689bcd8 refactor: Check for nullish before casting as function
- d1aab90 refactor: Remove unnecessary return statement
- b870fe6 refactor: Wrap decode errors in new error
- 00298ce Fix header iteration
- 3f134d5 Deal with Set-Cookie headers
- 35dcd00 Convert header keys to lowercase strings
- 1535db8 fixup! Support Header() constructed from iterator
- 4b86200 refactor Headers initialization
- d665817 Make first WPT headers test run
- eb38c0a Add IsSymbol() to js.Value
- 4019937 Iterate entries instead of keys
- 9707abc refactor: Remove unnecessary duplicate function
- e0d50dc refactor: Extract ByteString type
- 8d4e918 Don't store canonicalized headers
- 956191c Apply suggestions from code review
- d3bb7c2 change mentions of goja to sobek
- 1aa483b Stuff missing proper type error
- ef8d83f refactor(wpt): Extract some HTML report generation functions
- 5ef432b test(wpt): Use v8 - broken with sobek
- 702e209 Update go.mod in wpt
- 16b5159 refactor: Remove unnecessary close method
- 6f0d61b refactor: Extract js lookup helpers
- 4d5ce2f refactor: Create general JS iterator in Go
- 5cc62d8 Support Header() constructed from iterator
- 180e045 test: Refactor fetch Headers test
- 9a48d65 Accept object arguments for headers constructor
- 70c1422 refactor: Rename noErrs to errCount
- ed9f081 refactor: Remove unnecessary error return values
- 289d081 feat: Validate ByteString in JS layer
- 7eb641f Check header name in Delete
- 804eb63 Throw TypeError on Headers.Set with invalid value
- 3da5173 refactor: Don't freak out if logging after Close()
- c156da5 Return error in JS on error from Go code
- 8a93a71 Return error on invalid header key
- 73f8c2e Add error return values to Header functions
- 6572a3b fix: Proper V8 TypeErrors from Go
- 49313a3 Defer Close() log statement
- 555d037 test(wpt): Improve report
- fd7f22c refactor(wpt): Introducs a "pendingTest" type
- f6a480a refactor: Don't panic on sobek.NewTypeError()
- 89c3547 Check if callback is nil
- 2ed1b47 refactor: Simplify log record handling slightly.
- 911d78a refactor(scripting): Implement JS callback logging in engines
- f191a5c refactor(scripting): Remove generated logging in each JS callback
- 0fc6b3b test(wpt): Increase the discovered range of tests
- 6b58560 refactor: Delete unused type
- 1ab33a4 test(wpt): Report heading levels match structure
- 14a5dae test(wpt): Run tests in parallel
- b6b152d test(wpt): Create a report HTML file on completion
- d3c71d2 test(wpt): Create streaming manifest parser
- 8d6aba4 test(wpt): Add minimal WPT manifest parse verification
- e582dc2 refactor: Make flat log handler unexported
- 8b043be Change JS callback entry/exit logs
- 3078598 Make the test log handler handle "subloggers"
- 5e3f74b Return ProcessingInstruction from NewPro...
- 136a195 Rename UrlBase -> URLBase
- 6bcc8cf Remove debug print statements
- 45db58e build: Make test a dependency to .PHONY
- 7e8352d Fix nodename for processing instructions
- fe04f97 Add return when yield returns false
- be8b65f test(wpt): Use sobek instead of v8
- 54fc317 test(wpt): Iterate testharness HTML files
- 61a4d3e ci: Create WPT github workflow
- 435c276 ci: Run WPT as part of CI build
- 069e89b test: Extract WPT page behaviour
- 611f887 test: Allow passing logger to window tests
- dffb6b1 refactor: Always return a logger from Node.Logger
- 55c75eb test: Update WPT runner
- a9749ea test: Create test modules for web platform tests
- 9225c3e fix: document.getElementById doesn't throw on undefined
- a191785 Add skeleton web platform test
- 33f66e9 feat: Create ProcessingInstruction
- b3d2248 test: Skeleton framework for WPT
Release v0.10.2
- f62d8c7 chore(release): 0.10.2
- de4b736 doc: Update getting-started
- 0fc8c6f test: Remove V8 from test names
- 27bc289 test: Remove gomega imports
- 4d84a5e doc: Remove incorrect documentation about V8
- 84ee3ce Tidy go.mod
- ac4c116 test: Move MutationObserver tests
- c363f3f fixup! test: Move CustomEvent test out of v8 scope
- 3ec5514 test: Move MutationObserver test
- d06c2ad test: Move HTMLAnchorElement test
- 901ae4c test: Move event target tests
- 24edbff test: Move element tests
- 58aacc7 test: Move DOMParser test
- 100fe27 test: Move document tests
- 1c00ad2 test: Move URL script test suite
- 127dabc test: Move CustomEvent test out of v8 scope
- cc11861 fix(sobek): Fix bad JSONStringify
- dd29030 test: Rename test logging -> console
Release v0.10.1
Release v0.10.0
- 238bcdc chore(release): 0.10.0
- c49336a feat!: Implement sobek script engine
- 4d9bd64 Move sobekhost -> sobekengine
- 030d84d refactor: Remove useless error in panic
- c4c2dee refactor: Fix potential future bug
- e9bf75a Add codedoc to NewTypeError
- c725383 refactor: Rename and remove duplicates unwrapValue
- 6820783 test: Fix typo in suites
- e16e3d0 doc: Fix code doc
- 3e08b78 refactor: Make code resilient to nil values
- 14ebd1d refactor: Remove unused interface methods
- cd4ef7c test: Remove malplaced comment
- 69312e3 test: Fix malformed HTML
- cf8dc2e Log clock.advance calls
- 4cdca83 Add debug log from interval/timeout functions
- d7394e3 test: Move document script tests
- c7730fe Log module resolution in v8
- 4dd6458 Add .log files to .gitignore
- c03bb76 wip: Datastar tests
- e7d3236 test: Run datastar tests for sobek
- eb96cc9 test: Run HTMX tests for sobek host
- ab90c5a feat: Implement console logging function for sobek host
- 0aab2e6 refactor(sobek): Fix missing script download support
- eb7966d Remove duplicate text in error message
- 50a5007 refactor: Extract download function
- 03053d8 refactor(sobek): Rename GojaScript -> script
- 740e327 refactor(sobek): Rename gojaDynamicObject -> dynamicObject
- f5af02e refactor(sobek): Rename gojaDynamicArray -> dynamicArray
- 8cd0fb1 refactor(sobek): Fix various "Goja" strings to "Sobek"
- 3e5553f refactor(sobek): Move module link to context
- f710180 refactor(sobek): Extract script engine
- 56fb8db refactor(sobek): Rename gojaObject -> object
- d5ec1a3 refactor(sobek): Rename gojaFunction -> function
- ebb61e1 refactor(sobek): Rename toValue/newValue
- ae1d1ee refactor(sobek): Rename gojaIterator -> iterator
- 0810409 refactor(sobek): Rename gojaResolver -> moduleResolver
- b892ea2 refactor(sobek): Rename gojaPromise -> promise
- 2652979 refactor(sobek): Rename goja_host_test -> sobek_test
- f8f1269 refactor(sobek): Rename gojaError -> scriptError
- cf173d2 refactor(sobek): Rename gojaScope -> scope
- 1818847 refactor(sobek): Rename gojaCallbackContext -> callbackContext
- 69a1192 refactor(sobek): Rename gojaScriptHost -> scriptHost
- 2bc0451 refactor(sobek): Rename GojaContext -> scriptContext
- 93b566e refactor(sobek): Rename gojaClass -> class
- c67fced refactor(sobek): Rename gojaValue -> value
- 794ca2b work: Create prototype ESM implementation for sobek
- 65e4331 work: Move goja -> sobek
- c138fb2 rename v8host -> v8engine
- b4da7ab feat!: Remove XHR.SendBody - just call Send(body)
- c938091 feat!: Remove Document.CreateText
- fbfb32e feat!: Remove event.New
- cd9a294 feat!: Remove constant with typo
- 2a762d2 feat!: Remove Node.Parent()
- d0529b8 feat!: Remove v8 as the default script engine
- 993d43a refactor: remove obsolete
ownsHostfield - f0a526b feat!: Remove deprecated functions
Release v0.9.3
- 9e94b30 chore(release): 0.9.3
- 11458a2 Fix issues with duplicate close of browser
- d41a1ef Update script docs
- 63ad615 Add todo comments for race conditions and use-after-free issue
- 8e333d0 fix: Fix potential race condition when closing browser
- 462b563 refactor: return implementation type from interface
- 899bb04 Tidy mod file
- f7cde26 propagate errors from insertAdjacentText
- 02f4a28 feat:
node.lastChild - c871936 feat:
element.insertAdjacentText - 6f2d3e6 feat: Implement document/element getElementsByTagName
- 649c5a8 feat: dummy
window.opener. - a23cd07 feat: window.parent
- 371293a feat: document.CreateElementNS
- 140c66a test: Add verbose logging to test failing on build
- 08cf39f refactor: Use named return values
- 2d404fe feat: Implement outerHTML setter
- 951ea25 refactor: Remove unnecessary src struct field
- a3aacef refactor: Simplify script compilation
- e419bd6 Fix replaceChild semantics
- 438a259 Handle errors from Element js callbacks
- da951e8 refactor: Replace element JS functions with autogen
- bd7b77b feat: Allow setting
element.outerHTML - cd57546 feat:
Node.replaceChild - 49c7c54 refactor: Remove unnecessary log calls
- b7c6699 Log arguments and return values from generated JS wrappers
- a62edfe test: Remove debug log from datastar test
- 20d0baf test: Extract Datastar tests to scripting test suite
- 0aac4f7 test: Extract HTMX tests to nested tests
- 72e02ac refactor: Extract download function
- 4fa8747 test: Decouple InitBrowser from v8
- acc9515 ci: Fix auto-update next action
- c2cdf19 Fix missing step in rebase-next
- 76eb9c0 build: Fix rebase-next
- 0b3a2ff build: Create workflow to keep 'next' up-to-date
- 5415603 refactor: Remove unused types
- 683c583 refactor: Remove dependencies to deprecated event.New
- 41a4856 feat: Create v8browser.New
- 3ba2ce9 fix: Parse fragment error
- b5de733 refactor(codegen): Remove unused values
- 0c49134 fixup! refactor(codegen): Remove duplication
- 5d8974b refactor(codegen): Reduce load duplication
- f24b4f1 refactor(codegen): Remove unnecessary return statements
- 1bab6a3 refactor(codegen): Support partial interface merging
- 0856509 build(codegen): Update packages
- c37ef38 refactor(codegen): Remove duplication
- c6d0f7f refactor(scripting): Make decodeEventListenerOptions a function
- 8101d5e refactor(codegen): Foundation for partials
- 8f0bb03 refactor(codegen): Harmonise script config
- c431b94 refactor(codegen): Separate JS callbacks from global scope
- 91e8782 build: Improve cleanup for code generator
- 87ccd0d refactor: harmonize request body handling
Release v0.9.2
- aac2e9d chore(release): 0.9.2
- fff60d6 build: Update dependencies
- da22ec2 doc: Specify why some JS wrappers have custom implemenation
- 5e7c481 feat: DOMTokenList.remove handles multiple arguments
- 2e27580 refactor: eliminate aliased import
- 15d0f0c refactor: improve js call logging
- 418ea6e refactor(codegen): Remove useless functions
- a4b4910 test: Extract ESM tests as general tests
- b785577 refactor: DefaultEngine returns a valid engine
- b8ad5b6 doc: Update attribution to 3rd party libs for testing
- 99f36a9 refactor: move test js libs to separate folders
- 2d5b8f8 test: add datastar form post test
- 6b535bc test: Update datastar to rc6
- fdfd0d5 fix: use defualt timeout for
setTimeout - 3816f25 fix: Don't panic if disconnecting flusher again
- 2fbc1ec feat(fetch): Add Headers support
- c246025 feat(scripting): Log all JS callback errors
- c0e9c3d feat(scripting): Add SVGElement and MathMLElement to global scope
- 7536937 feat(scripting): return explicit error on request init
- b5ef3b7 doc: improve browser code doc
- 1ef2852 test: rewrite tests using obsolete NewBrowserWithHandler
- 70aea9d doc: Improve browser documentation
- 684448d test: remove script host remnant
- 742f6c8 fix: ignore unnamed form input fields
- a0ea4d3 test: cleanup script host after test
- deb4f63 refactor: remove goja aliased import
- 8985111 doc: remove misleading documentation about nil values
- e513ac1 refactor: check if host is disposed before creating a new context
- 5cbd93c cleanup: remove log statement
- cd44b98 work: reclain script hosts
- 8994cbb test: remove unnecessary ScriptHostFactory
- e5e842c doc: add initialization code documentation
- 517c83e refactor: simplify goja host construction
- fedc998 refactor: v8ScriptEngine now owns global scope configuration
- 520989b refactor: remove unused type
- f9d2e50 refactor(v8): move script host caching to engine
- b4b3e2e refactor: remove unused code from v8host
- 42c4494 doc: add code doc for script engine interfaces
- f1e014d refactor(goja): remove unused goja types
- e980758 test: refactor most tests to accept a factory
- 00332be refactor: allow passing a "ScriptHostFactory"
- f3b6ea7 test: add missing newline after log error
- ef4dad7 build: remove unnecessary go.mod lines
- bc09663 test: refactor NewBrowsingContext
- 2596d48 test: create test verifying null signal/body doesn't throw
- d94882d feat(scripting): support fetch body option
- 5be6dc9 feat(scripting): support fetch method option
- 5db9672 feat(fetch): support method and body options
- 9f1ecf4 feat: implement
node.isEqualNode - a119013 work: expose isEqualNode to scripting
- 549c405 work: Implement (incomplete) isEqualNode
- 261a348 feat(dom): implement Element.closest
- 3c1314f build: Add gow as a tool dependency
- 562f0ac refactor: rename scope variables
- 2c12f40 refactor: Decouple JS value codecs
- c824699 refactor: move Logger() from CallbackScope to Scope
Release v0.9.1
- 1f67af2 chore(release): 0.9.1
- e989c76 fix: Browser.Open didn't set location on redirect
- efcb171 test: Rename StaticFileServer->HttpHandlerMap
- bfbb993 test: Simplify redirect testing
- f00157d build: Update to use Go 1.25
- 503cabb docs(html): Document Navigate function
- 52b7521 feat: Window.Navigate resolves href
- b1708c3 docs: Update readme
- 1fb6421 feat: Improve TestLogger, how it renders attribute groups
- 62ae068 test: Add case for testing redirect on navigate
- a8894c5 refactor: Remove unnecessary temporary value
- 0cbdab5 docs: document less-obvious solution
- a90d529 docs: Update readme and add star history
- e88f4a2 docs: Remove [ - a remnant of a link
- 6ab3061 docs: fix link
- a369d99 docs: Simplify the "why"
- da46931 docs(readme): Fix typo
- 0299322 docs(readme): Fix typo
- e18f34a docs(readme): Update intro, and link to the "why" document.
- 62866ca docs(readme): Fix typos
- bfe3370 docs: Add document describing "why"
- 27f7ba7 Format markdown files
- 62cedd4 Rename KeyboardEventInit() to EventInit()
- f85e895 cleanup: Remove commented code
- 08eca25 feat: Expose correct event type, and Key to JavaScript
- 0134b49 feat: Add "Key" to KeyboardEventInit, and support mixed case strings
- ab4d39e cleanup(codegen): Remove unused field
- abb8a38 chore(release): 0.9.1
- a5bbaf9 chore: Merge diverging branches
- ad843c8 feat: Create KeyboardController to simulate keyboard input
Release v0.9.0
- 98be1e4 chore(release): 0.9.0
- 69be52c chore: Merge tag 'v0.8.0'
- 7caed60 doc: Fix grammar in readme files
- e507663 test: Fix some matcher reporting
- 8254c3e test: Fix commented line, and verify recorded events
- 81bbfad test: Improve error messages for failed matchers
- 5e9c036 doc: Fix typo in package documentation
- 1c0a0e5 doc: Improve uievent package docs
- 693a19c work: Don't panic on nil pointers in KeyboardController
- 390041f work: Implement cancel behaviour for keydown events
- 1708e8d test: Extract test helpers and matchers to separate file
- 52006be test: Extract duplicated setup
- d82b7d9 doc: Update getting started documentation
- b8bf485 refactor!: Move test server to unexported function in used package
- f3e6055 doc: Update code docs for package key.
- fc49f0f doc: Update getting-started documentation
- 1c64671 doc: Update keyboard input doc
- 19eb58b doc: Skeleton input-controller-docs
- 28ebfed doc: Add gosthttp package docs
- 07b43f4 cleanup: Remove unused package
- 9cd8c90 Updates to code structure
- 3d2b515 refactor: Move KeyboardController to input/controller
- 61ce170 refactor: Extract Key type to keys package
- c3238b2 work: Send string as a keyboard sequence
- ea6d325 doc: Update developer docs
- 6873d07 work: Keyboard test page
- 24e7b03 work: Controller updates input before dispatching event
- ec73991 test: Fix datastar test page
- cc9643f work: Remove keypress events
- 400ee0d work: Set IDL value attribute instead of content attribute
- 6993fce work: Letter keys dispatch 4 keyboard events
- f13412f work: Pressing keys
abwith input field focused sets value "ab" - d4b19ea work: Create a skeleton HTML page for exploring behaviour
- 322620d test: Refactor datastar test to use the exported test logger
- 351fc7f feat: Export a Testing.TB aware logger
- b786db1 refactor: Reuse name IDL attribute where it wasn't used before
- fe18a93 feat: FormData reads input element IDL instead of content attributes
- 3919814 feat: Implement name/value IDL attributes on HTMLInputElement
- f401376 refactor: Move polyfills installation to separate file
- 1c7bca0 refactor: Autogenerate HTMLOrSVGElement.dataset implementation
- a91920d refactor: simplify for loop with range
- 07634b9 feat: Return with an error when using unfinished request option
- f89806c doc: Improve documentation of piping log output to Go test.
- 2e4d4dd doc: Update readme files
- 004884b fix: Fix TestLogger to now write after test is done
- ec5abb0 fix: Don't write to logger when closing browser
- 9d8428b test: Fix typo in test comments
- 84caf25 chore(release): 0.8.0
Release v0.8.0
- aee7693 chore(release): 0.8.0
- 2d29e9d feat: Support basic Datastar
GETrequest - 707b7c9 work: Provide friendly error message if nodemon is not installed
- 95e2d2c cleanup: Remove test log statement
- 80ccd45 cleanup: Remove commented code
- 1cc6bb4 work: Improve script execution logging
- eb4c9b9 work: Tick clock after running script module
- 6049013 test: Create test case for datastar test app
- d6a3222 Datastar endpoint
- 9c43fba Create helper script for dev server
- fc20d9a feat: Implement Document.importNode
- e463ed7 feat(scripting): Add iterable to element attributes
- 899ae81 feat(scripting): Add Element.innerHTML attribute getter/setter
- d9e3dd4 feat: Add XHR.responseType
- f623045 fix: Add missing return for V8 error logs
- 3c45e0b feat(scripting): Support url.setSearch
- 4082907 feat: Add suport for ES modules
- 1f12e8e refactor: Eliminate duplicate imports of same package
- afd6833 test: Remove duplicate StaticFileServer
- 95b4c92 test: Fix content type of test scripts
- 5c68e61 refactor: Create buffered channes to avoid new goroutine
- 4af2937 work: Fix when modules are loaded
- 4a4a688 work(v8): Wait for promise after evaluating modules
- ec7f4a0 work: Log when script element connects
- f4da8ae work: Execute basic module without imports
- 2696acc work(html): Support type="module" in HTMLScriptElement
- 3c84db7 work: Add DownloadModule syntax
- 808e875 work: Move script downloading to script host
- 3c7c76f work: Create script compile step
- aa2469e feat: Implement Element.InsertAdjecentElement
- c5f14f3 work: Fix issues with DecodeAs implementation
- d562237 work: expose insertAdjacent to JS
- cf7dc7a work: Implement Element.InsertAdjacentElement
- 939a547 test: Close PipeHandler automatically when test context completes
- 9e10f9e test: Fix how PipeHandler handles disconnected clients
- e4de47c test: Fix missing sync after abort
- 595fe57 feat: Improve error logging of JS errors
- d9b5938 doc: Fix missing word in doc comments
- c392b08 test: Dispose v8 hosts in general suite teardown
- 49040c5 refactor: Create explicit function to indicate unsupported functionality
- 194e19b test: Remove duplicate ParseHTMLDocument helpers
- d597f92 work: Change script name of NewUint8Array
- de7bf81 work: Check if parent is nil in
ChildNode.Remove() - 25a3ed3 test: Use t.Fatalf instead of panic in test helper
- 7f50207 work: Remove bad comment about autogenerated code
- a7dab26 test: fix typo in suite type name
- 8a68449 feat: Close browser when context is closed
- 9ce8872 feat!(dom): Add Node.ParentNode
- ff312f9 refactor: Create ElementParent as type alias for ParentNode
- bae0bee feat(scripting): Expose Node.parentNode
- 5f1f7e5 feat: Implement ChildNode.remove()
- 6c8d3a3 cleanup: Remove whitespace
- 891d50a fix: Error when passing null as a Node in JS
- 8c2e396 feat: Override HTMLTemplateElement.SetInnerHTML
- f7a73f4 test: refactor TextNode test
- 496098c feat: Create Text prototype in JS
- 1de8a5a refactor: Auto-generate document.createTextNode
- 8f3a918 feat: Add ReadableStreamDefaultReader.read() method
- d0c9446 work: Fix error message
- 3f2039a doc: Improve grammar in doc comments
- 36c51b0 doc: Fix typo in doc comments
- a59249d work: Change error generation to explicitly log
- f69d413 cleanup(codegen): Remove commented line
- edd5c66 work: Fix unkeyed fields
- fe3dea6 work: Implement ReadableStream.getReader().read()
- 6ce8d80 work: Add js/Scope.NewUint8Array
- 4cc3d28 work: Add js/Scope.NewObject()
- d78d660 build(codegen): Update webref to 0.5.8
- 7c87e3f work: Add skeleton ReadableStream.getReader
- edf1786 feat: Implement Response.body returning a ReadableStream
- 26479e2 work: Create skeleton ReadableStream class
- bb49840 feat: Create log error record when calling not implemented JS function
- a51e24a test: Refactor InsertAdjacentHTML test to table-driven test
- f548e63 refactor: Simplify code, and fix poor error message
- fadb9ec feat: Expose ParentNode.children to JS
- edaf1a4 feat(scripting): Support TextDecoder through polyfill
- 52853d4 feat(scripting): Basic window.self implementation
- 837f89f refactor: Fix logging output, Write JS instead of V8
- bfe70c9 refactor: Extract generic option decoder
- 1ffa01a refactor: Create generic options parser
- f4c38da refactor: Move option decoder to codec
- 32d9bde work: Extract general pattern for decoding javascript options.
- 46a7ad4 doc: Fix bad type reference in doc comments
- 1bb508e work: Remove unnecessary Reject function
- 9c11779 work: Abort reason works in JS
- 232f889 work: Support context in test helpers
- fc78fde refactor: Remove unnecessary levels of indirection
- 4f451f4 work: Extract internal object from goja object
- d1a8872 work: fetch returns abort reason in rejected promise
- d5fff92 refactor: Move ErrReason to promise package, and rename to ErrAny
- 8217102 doc: Fix typos in promise package documentation
- a5b8883 work: Bail out of goroutine when context is cancelled
- 257d535 doc: Document default event size for event loop channel
- 919aa71 build: Try fixing environment variables in makefile
- c60b31c work: Rename constants to follow naming conventions
- abda8ad test: Fix the context used for expecting a message
- 441fd36 test: Remove duplicate BrowsingContext test helpers
- 11e3692 doc: Add package documentation to promises.
- afacbc9 test: Improve ExpectReceive helper
- b72f86f cleanup: Remove unused function
- d4fe87e build: Enable synctest experimental feature
- 2ea5b3c work: fix typo in error message
- 56370cf refactor: Create implicit context on Browser and Window
- cc31b91 feat: Support aborting fetch request
- 4d2deef work: Move request options to request
- c1b5e51 work: Refactor JavaScript promise creation
- 68efd8a refactor: Move Promise to separate package without dependencies
- 29043a6 work: refactor PipeHandler
- c08f002 work: Remove context from PipeHandler
- e85f497 work: Return an error when reading an aborted response body.
- 1b6a467 work: Fix roundtripper returning error when aborting early
- 7e8a565 work: Extract logic to create a cancelled context from AbortSignal
- ae45e79 work: Refactor signal implementation, no more dangling cancel functions
- 0753c77 work: Abort controller cancels HTTP client request
- 881edc1 work: AbortSignal disconnects the HTTP client
- 4adea8f refactor: Rewrite fetch abort to use EventSource
- 523c3f3 test: Extract helper asserting for message on channel
- 45e745c work: First version of an abortable fetch request
- 76a0bcc feat: Create EventSource
- 3d3e72e doc: Add documentation to DEFAULT_BUF
- 908fed9 work: Move EventSource to production code
- 1a13c12 test: Remove duplicate helper function
- 5f6af70 test: Simplify checking if a channel is closed
- b6baa5d refactor: Simplify event stream interface
- a66dc16 work: Ensure ordering of events
- 0331c41 work: Create framework for channels of events
- 13e1f32 cleanup: Remove unnecessary fmt.Sprintf
- b294e55 docs(readme): Remove comments about usage of ginkgo
- 5095bd5 build: Change html test script to not use ginkgo
- e038cde cleanup: Remove ginkgo code
- a10e2a5 cleanup: Remove unused test code
- 5d8858b test(scripting): Remove ginkgo bootstrapper
- afebb85 test(scripting): Migrate HTML element class name ginkgo tests
- 1cdc24e test(scripting): Migrate Window.location test
- 494b068 test(scripting): Migrate Element ginkgo tests
- 75a0c63 test(scripting): Migrate FormData ginkgo tests
- 7b265aa test(scripting): Move xpath polyfills
- ad706b2 refactor(scripting): Move Node polyfill to scripting/internal
- 7ab5f09 refactor(v8): Remove unused polyfill
- c4249cb refactor(scripting): Move FormData polyfills to scripting/internal
- 5bee587 cleanup(v8): Remove unused function
- 86ed685 test(scripting): Migrate NamedNodeMap ginkgo tests
- becfeb3 test(scripting): Migrage XHR ginkgo tests
- 9cdc05a test(scripting): Migrate DocumentFragment ginkgo tests
- 1db3018 test(v8): Remove useless test
- e6eee25 test(scripting): Migrate ShadowRoot ginkgo tests
- 6909ed8 test(v8): Remove unnecessary test
- 23a5b23 test(html): Remove ginkgo bootstrapper
- 38afed0 test(html): Migrate HTMLAnchorElement ginkgo tests
- 1112698 test(html): Migrate DOMParser ginkgo tests to Go
- ac456c4 test(html): Migrate HTMLTemplateElement ginkgo tests to go tests
- f94c9b0 test(html): Convert FormData ginkgo tests to go tests
- 32d60f6 refactor: Rewrite loop to range loop
- 93b4adc test(html): Migrate ginkgo location test
- 457933f cleanup(codegen): Remove ginkgo dependency
- 4e4cb1e cleanup(codegen): Remove unused function
- 058b0a7 test(codegen): Convert ginkgo tests to go tests
- 9bdc79f test: Migrate QuerySelector test from ginkgo to native go
- a55584a test: Remove ginkgo tests in gojahost
- 5c63ed4 test: Convert comment test from ginkgo to native go
- 31e75d2 feat(dom): Add AbortController.Abort()
- a13c7c0 test: Convert ginkgo to named go test
- 8a52970 feat: add skeleton fetch function
- 812d56d work: Remove unnecessary nil check
- 6cc307e work: Create a more helpful panic if closing the pipe twice
- 38a9004 cleanup: Remove commented lines
- 673f1e6 test(scripting): Verify Request/Response exist as constructors
- 7273221 refactor: Use http.ResponseController to flush
- 3b60a50 test: Remove useless test
- 20af61a work: Return an error when calling unsupported constructor
- 76d4270 test: Simplify fetch tests
- 4d8dc5e test: Extract PipeHandler
- 3e85c7c work: Improve error log in Clock
- 60be253 work: Implement proper synchronization of fetch test code
- fe4ab99 refactor(scripting): Extract promise construction
- 6e477af work: Proper promise return from "fetch"
- 6359693 work(scripting): Reject promise with js...