Skip to content

chore: migrate the simpleserialize.com from ssz monorepo#65

Merged
nazarhussain merged 43 commits intomasterfrom
feature/merge-from-ssz
Jul 31, 2025
Merged

chore: migrate the simpleserialize.com from ssz monorepo#65
nazarhussain merged 43 commits intomasterfrom
feature/merge-from-ssz

Conversation

@nazarhussain
Copy link
Contributor

@nazarhussain nazarhussain commented Jul 31, 2025

Used the following steps to migrate the git history.

# Clone the source repo
git clone git@github.com:ChainSafe/ssz.git ssz-temp
cd ssz-temp

# Create a new branch for the extraction
git checkout -b extract-simpleserialize

# Installed git tool, git builtin `filter-branch` recommended this tool
brew install git-filter-repo

# Rewrite the repo to only contain packages/simpleserialize.com
git filter-repo --path packages/simpleserialize.com --path-rename packages/simpleserialize.com/:

# Add the target repo as a remote
git remote add target https://github.com/ChainSafe/simpleserialize.com.git

# Fetch the target repo
git fetch target

# Create a new branch based on the target's main branch
git checkout -b feature/merge-from-ssz target/main

# Merge the extracted history and resolve all the conflicts manually
git merge --allow-unrelated-histories extract-simpleserialize

# Push the new branch to the target repo
git push target feature/merge-from-ssz

NOTE:
The only caveat is that we were releasing this static site every time we release the packages. But that has no effect because static site has dependencies to older versions of the ssz packages.

wemeetagain and others added 28 commits July 31, 2025 16:28
- @chainsafe/persistent-ts@0.19.1
 - simpleserialize.com@0.1.1
 - @chainsafe/ssz@0.8.19
Update lodestar-types to a version w bellatrix ns
BREAKING CHANGE: complete refactor, see packages/ssz/README.md for details

Initial squashed v2 commit

Replace lodestarTypes

Update tests

Add Union and None types

Update spec tests

Remove old src and lodestar dependencies

Improve JSON parsing for tests

Load YAML with lodestar utils schema

Commit ArrayComposite before getAll

Re-write toJson fromJson test

Fix uint json conversions

Print tree in valid test if requested

Fix hashTreeRoot for ByteList

Add RENDER_ROOTS option

Fix typos

Use numerical sort in array commit

Fix value_serializedSizeArrayComposite

Pass ssz_generic tests

Allow to select tests to run in ssz_static

Fix container bytes offset

Rename fixedLen to fixedSize

Sort deserailization methods

Print json stringified in test

Review logic

Clean up tests

Define JSON casing at constructor time only

Add casing maps for merge types

Update casing in unit tests

Re-organize utils

Fix merge casing

FIx offset calculation

Pass all spec test pre-merge

Bump merge test

Extend timeout for mainnet tests

Pass all unit tests

Return defaultValue in simpleserialize random

Remove @chainsafe/lodestar-spec-test-util dependency

Copy yaml schema from lodestar-utils

Fix benchmark type issues

Skip createProof benchmark

Skip old benchmark without runner

Remove postinstall script

Re-add UintBigint optimization

Fix set_exitEpoch_and_hashTreeRoot benchmark

Add List of Number benchmark

Use DataViews for faster deserialization

Use DataViews for tree serialization too

Update workflows build after install

Update packedNode tests

Review Tree API

Validate length in ByteArrays

FIx benchmarks in persistent-merkle-tree

Simplify LeafNode constructor

Refactor subtreeFillToContents

Run struct <-> tree_backed benchmarks

Update test types

Fix Uint64 DataView benchmarks

Add benchmarks for full state serialization

Use consistent initialization in DataView

Optimize toView for ByteArray

Add clone method for safer ContainerTreeViewDU

Add documentation to all public methods

Update SSZ README

Simplify testTypes

Update persistent-merkle-tree README

Add unit test push x5

Fix heigh typo

Add note Supports index up to Number.MAX_SAFE_INTEGER.

Address PR comments

Add more benchmarks (#227)

Remove merkleizeSingleBuff

Add more documentation

Add typeName to all containers

Add eth2 JSON casing

Rename merge to bellatrix

Fix missing renames of merge to bellatrix

Update ssz readme

Export byteArrayEquals

Add more BitArray functionality

Various fixes

Test type UX of allForks types

Abstract logic into BitArray and ByteArray

Add .equals functionality

Don't run allForks code

Rename receiptRoot

Update ssz docstrings

Multiple fixes

Remove non-existent variable

Add proof api

Fix int conversion in node.getUintBigint

Add Proofs functionality

Run Proof tests on ssz_static minimal

Add length node for proofs of lists

Require rootNode only when necessary in Array proofs

Fix rebase issues

Move Node navigation to functions

Add treeZeroAfterIndex fn

Add sliceTo method in CompositeList ViewDU

Use Uint64NumInf only where necessary

Add Eth1Block type

Use defaultView and defaultViewDU methods

Support BranchNodeStruct in proofs

Run proof tests

Post process proof nodes

Fix proof generation for all types

Fix ContainerNodeStructType proof unit test

Stop tracking complimentary benchmarks

Fix typo in Union maxSize

Add test for maxSize and minSize for all data structures

Export helper functions

Fix length param in Vector

Prevent setting values in ViewDU beyond length

Add more test cases

Improve ListBasicTreeViewDU.push logic

Fix Composite ViewDU commit nodes logic

Fix cache logic in ViewDU

Use type guards and simply set composite

Fix allForks test

Fix recursive call in BitArray

Ensure data consistency in ArrayCompositeViewDU

Better error in BitArray.set

FIx typo in populateAllNodes

Add more BitArray unit tests

TreeViewDU.commit should not return node

Better error messages in fromHexString

Auto-commit on ViewDU

Fix perf types

Fix proof generation for Validator type

Benchmark more eth2 ssz objects

Track raw cost of hashing vc list

Add more coverage WIP

More coverage WIP

Prevent pushing over length

More coverage

Ensure consistent mutability behaviour

Ensure correct mutability in ContainerNodeStruct

Move isViewMutable to CompositeType

Prevent keeping references for immutable views

Fix ContainerNodeStruct valid tests

Fix types in Uint constructor

Increase bitArray coverage

Guard against new BitList checks

Fix readVariableOffsetsArrayComposite

Fix rebase issues

WIP - hashTreeRoot perf

Pre-allocate array if length is known

Use Uint32Array in offsets array

Expose faster ArrayLike vectors for view.getAll()

Allow to customize Array typename

Add more array perf tests

Remove ArrayLikeWritable

Increase coverage

Modularize TreeView and TreeViewDU

More coverage

Remove rebindLeft rebindRight methods

Add more coverage

Organize tests

Set name to Container tree view instances

export CompositeTypeAny

Refactor default* getters to methods
Bumps [nth-check](https://github.com/fb55/nth-check) from 2.0.0 to 2.0.1.
- [Release notes](https://github.com/fb55/nth-check/releases)
- [Commits](fb55/nth-check@v2.0.0...v2.0.1)

---
updated-dependencies:
- dependency-name: nth-check
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Bumps [url-parse](https://github.com/unshiftio/url-parse) from 1.5.1 to 1.5.10.
- [Release notes](https://github.com/unshiftio/url-parse/releases)
- [Commits](unshiftio/url-parse@1.5.1...1.5.10)

---
updated-dependencies:
- dependency-name: url-parse
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Bumps [async](https://github.com/caolan/async) from 2.6.3 to 2.6.4.
- [Release notes](https://github.com/caolan/async/releases)
- [Changelog](https://github.com/caolan/async/blob/v2.6.4/CHANGELOG.md)
- [Commits](caolan/async@v2.6.3...v2.6.4)

---
updated-dependencies:
- dependency-name: async
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
…#232)

Bumps [node-sass](https://github.com/sass/node-sass) from 6.0.1 to 7.0.0.
- [Release notes](https://github.com/sass/node-sass/releases)
- [Changelog](https://github.com/sass/node-sass/blob/master/CHANGELOG.md)
- [Commits](sass/node-sass@v6.0.1...v7.0.0)

---
updated-dependencies:
- dependency-name: node-sass
  dependency-type: direct:development
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Bumps [nanoid](https://github.com/ai/nanoid) from 3.1.23 to 3.3.4.
- [Release notes](https://github.com/ai/nanoid/releases)
- [Changelog](https://github.com/ai/nanoid/blob/main/CHANGELOG.md)
- [Commits](ai/nanoid@3.1.23...3.3.4)

---
updated-dependencies:
- dependency-name: nanoid
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
…247)

Bumps [minimist](https://github.com/substack/minimist) from 1.2.5 to 1.2.6.
- [Release notes](https://github.com/substack/minimist/releases)
- [Commits](https://github.com/substack/minimist/compare/1.2.5...1.2.6)

---
updated-dependencies:
- dependency-name: minimist
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
* update simpleserialize packages

* chore: publish

 - simpleserialize.com@0.2.0
 - simpleserialize.com@0.3.0
 - @chainsafe/ssz@0.9.3
 - simpleserialize.com@0.3.1
 - @chainsafe/ssz@0.9.4
 - simpleserialize.com@0.3.2
 - @chainsafe/ssz@0.10.0
* add basic config

* update scripts

* update workflows

* fix workflow

* fix release please

* more fixes

* fix cd

* add dependabot and semantic pr

* Update release-please configuration

* Move cloudflare deploy into cd workflow

* Remove old release workflow

* Revert yarn.lock changes

Co-authored-by: Cayman <caymannava@gmail.com>
* chore: fix release-please config

* chore: update lockfile
Signed-off-by: Marin Petrunic <marin.petrunic@gmail.com>
* Add capella fork types

* Update consensus spec version to 1.3.0

* Set capella as default fork

* Add webpack config rules to fix build issues
ensi321 and others added 10 commits July 31, 2025 16:28
* Add deneb to simpleserialize.com

* yarn lock

* Bump spec version
* Downgrade to yarn 1

* Update the tasks

* Fix workspace referenecs

* Add support for lerna

* Fix regression

* Remove engine condition from pckg.json
* feat: add electra type

* update lock file
…js and esm (#426)

* Update ts config for all packages

* Update package.json files

* Add file prefixes to all imports

* Update the ts-node config to use esm

* Upgrade typescript

* Upgrade typescript settings

* Fix the TS warnings and issues

* Fix import paths for types

* Update import path

* Update the import paths in tests

* Fix lint errors

* Fix lint formatting on config files

* Update the benchmark to use ts loader

* Disable the browser tests

* Fix the loader for the esm

* fix: convert prettierrc to yaml

* fix: __dirname to ESM

* fix: revert TS version to fix download-spec-tests ts-node issue

* feat: use spec-test-util for ESM and wget compatibility

* fix: remove ts-expect-error after downgrading TS version

* fix: update SPEC_TEST_LOCATION

* chore: update eslint deps to remove lint error

* chore: lint code per updated lint rules from package update

* fix: convert to node 20 compatible dirname

* fix: convert to node 20 compatible dirname

* Cleanup benchmark loader for ts

* Update the hasher for benchmark

* Revert "Update the hasher for benchmark"

This reverts commit fd9adcce7b9bd3a03146baeccc4970dd6be92ca5.

* Update the hasher for benchmark

* Update package output dirs

* Update hasher path

---------

Co-authored-by: matthewkeil <me@matthewkeil.com>
* Add biome deps

* Remove all eslint disable directives

* Fix import orders

* Fix all formatting issues

* Fix lint/suspicious/noDoubleEquals

* Fix lint/suspicious/noExplicitAny

* Fix lint/suspicious/noImplicitAnyLet

* Fix lint/suspicious/noShadowRestrictedNames

* Fix lint/suspicious/useGetterReturn

* Fix lint/suspicious/noGlobalIsNan

* Fix lint/suspicious/noAssignInExpressions

* Fix lint/suspicious/noExportsInTest

* Fix lint/complexity/useArrowFunction

* Fix lint/complexity/noThisInStatic

* Fix lint/complexity/useLiteralKeys

* Fix lint/complexity/noForEach

* Fix lint/complexity/noUselessTernary

* Fix lint/correctness/noUnusedVariables

* Fix lint/correctness/noVoidTypeReturn

* Fix lint/correctness/noUndeclaredVariables

* Fix lint/nursery/useConsistentMemberAccessibility

* Fix lint/nursery/useCollapsedIf

* Fix lint/nursery/useGuardForIn

* Fix lint/nursery/useAtIndex

* Fix lint/style/noVar

* Fix lint/style/useEnumInitializers

* Fix lint/style/noNonNullAssertion

* Fix lint/style/useNodejsImportProtocol

* Fix lint/style/useNumberNamespace

* Fix lint/style/useTemplate

* Fix lint/style/useNamingConvention

* Remove eslint deps

* Fix linting tasks

* Fix the code generation

* Revert variable names in hasher/as-sha256.ts file

* Fix naming convention linting issue

* Revert variable names in hasher/as-sha256.ts file

* Remove empty comment line

* feat: remove void returns from hashers

* docs: add comment to for-in loop

* Set package version from npm

* Revert "Fix lint/style/useNumberNamespace"

This reverts commit 3b4ed3647738775d1f825bb67bc83cb895e4dbc4.

* Disable rule lint/style/useNumberNamespace

* Move spec constants to global scope to use CONSTANT_CASE

---------

Co-authored-by: matthewkeil <me@matthewkeil.com>
* Add tsx files into linting

* Fix fomratting for tsx files

* Add JSX to global scope for React files

* Fix rule lint/correctness/noUnusedVariables

* Fix rule lint/complexity/noBannedTypes

* Fix rule lint/complexity/useOptionalChain

* Fix rule lint/complexity/noForEach

* Fix rule lint/suspicious/noAssignInExpressions

* Fix rule lint/suspicious/noImplicitAnyLet

* Fix rule lint/suspicious/noExplicitAny

* Fix rule lint/style/useSelfClosingElements

* Fix rule lint/style/useTemplate

* Fix rule lint/nursery/noDuplicateElseIf

* Disable accessibility rules for now

* Fix types

* Fix lint errors

* Update packages/simpleserialize.com/src/components/Input.tsx

Co-authored-by: Matthew Keil <me@matthewkeil.com>

---------

Co-authored-by: Matthew Keil <me@matthewkeil.com>
* Fix lint/style/noUselessElse

* Update biome config

* Fix linting for tsx files

* Format the condition
* Set electra as default fork

* Update dependencies

* Update CL spec reference

* Update webpack dev server

* Fix default fork

* Update yarn lock

* Update ssz and types package

* Remove fulu from primitive

* Update CL spec ref in README
* chore: update yarn lock file

* Bump ssz.com
@nazarhussain nazarhussain force-pushed the feature/merge-from-ssz branch from 51f0b56 to cf8f2db Compare July 31, 2025 14:31
@nazarhussain nazarhussain force-pushed the feature/merge-from-ssz branch from cf8f2db to f6e6513 Compare July 31, 2025 14:34
@nazarhussain nazarhussain merged commit c788e76 into master Jul 31, 2025
2 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

9 participants