Skip to content

Commit 84b479d

Browse files
authored
Merge pull request #414 from bitcoin-computer/staging
Deploy 0.26.0-beta.0
2 parents 3f0e245 + 0978e51 commit 84b479d

File tree

348 files changed

+23325
-16629
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

348 files changed

+23325
-16629
lines changed

.github/workflows/build.yml

Lines changed: 0 additions & 191 deletions
This file was deleted.

.github/workflows/release.yml

Lines changed: 126 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,126 @@
1+
name: release-or-pre-release
2+
3+
on:
4+
push:
5+
tags:
6+
- "v*"
7+
8+
jobs:
9+
decide:
10+
runs-on: ubuntu-latest
11+
outputs:
12+
release_type: ${{ steps.set_type.outputs.release_type }}
13+
version: ${{ steps.set_type.outputs.version }}
14+
steps:
15+
- name: Extract version and type
16+
id: set_type
17+
run: |
18+
TAG="${GITHUB_REF#refs/tags/}"
19+
echo "Detected tag: $TAG"
20+
21+
if [[ "$TAG" == *-pre-release ]]; then
22+
echo "release_type=pre" >> $GITHUB_OUTPUT
23+
echo "version=${TAG#v}" | sed 's/-pre-release$//' >> $GITHUB_OUTPUT
24+
else
25+
echo "release_type=final" >> $GITHUB_OUTPUT
26+
echo "version=${TAG#v}" >> $GITHUB_OUTPUT
27+
fi
28+
29+
build:
30+
needs: decide
31+
runs-on: ubuntu-latest
32+
outputs:
33+
image_tag: ${{ steps.set_tag.outputs.image_tag }}
34+
steps:
35+
- name: Checkout
36+
uses: actions/checkout@v2
37+
38+
- name: Set up Docker Buildx
39+
uses: docker/setup-buildx-action@v2
40+
41+
- name: Log in to DockerHub
42+
uses: docker/login-action@v3
43+
with:
44+
username: ${{ secrets.DOCKER_HUB_USERNAME }}
45+
password: ${{ secrets.DOCKER_HUB_PASSWORD }}
46+
47+
- name: Set image tag
48+
id: set_tag
49+
run: |
50+
VERSION="${{ needs.decide.outputs.version }}"
51+
if [ "${{ needs.decide.outputs.release_type }}" = "pre" ]; then
52+
TAG="bcdb/bcn:${VERSION}-pre-release"
53+
else
54+
TAG="bcdb/bcn:${VERSION}"
55+
fi
56+
echo "image_tag=$TAG" >> $GITHUB_OUTPUT
57+
58+
- name: Build and Push Docker Image
59+
run: |
60+
VERSION="${{ needs.decide.outputs.version }}"
61+
TAG="${{ steps.set_tag.outputs.image_tag }}"
62+
63+
echo "Building image: $TAG"
64+
65+
docker buildx build --platform linux/amd64,linux/arm64 \
66+
--push \
67+
--tag "$TAG" \
68+
-f Dockerfile .
69+
70+
if [ "${{ needs.decide.outputs.release_type }}" = "final" ]; then
71+
docker buildx build --platform linux/amd64,linux/arm64 \
72+
--push \
73+
--tag "bcdb/bcn:latest" \
74+
--tag "bcdb/bcn:${VERSION}" \
75+
-f Dockerfile .
76+
fi
77+
78+
integration-tests:
79+
needs: [decide, build]
80+
runs-on: ubuntu-latest
81+
strategy:
82+
matrix:
83+
platform: [linux/amd64, linux/arm64]
84+
steps:
85+
- name: Checkout
86+
uses: actions/checkout@v2
87+
88+
- name: Pull temporary image
89+
run: |
90+
docker pull ${{ needs.build.outputs.image_tag }}
91+
92+
- name: Re-tag image for docker-compose
93+
run: |
94+
docker tag ${{ needs.build.outputs.image_tag }} bcdb:bcn
95+
96+
- name: Copy configuration files
97+
working-directory: packages/node
98+
run: |
99+
cp chain-setup/LTC/regtest/.env.example .env
100+
cp chain-setup/LTC/regtest/litecoin.conf.example litecoin.conf
101+
102+
- name: Set up Docker Compose
103+
run: |
104+
sudo apt-get update && sudo apt-get install -y docker-compose
105+
106+
- name: Install dependencies (npm install)
107+
working-directory: packages/node
108+
continue-on-error: true
109+
run: |
110+
npm install || echo "npm install failed, continuing..."
111+
112+
- name: Start services in regtest mode
113+
working-directory: packages/node
114+
run: |
115+
npm run up &
116+
sleep 20
117+
118+
- name: Run integration tests
119+
working-directory: packages/node
120+
run: |
121+
sleep 30; npm run test
122+
123+
- name: Stop services
124+
working-directory: packages/node
125+
run: |
126+
npm run down

.gitignore

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,7 @@ packages/**/chain-setup/**/db-data
1717
# Logs
1818
logs
1919
*.log
20+
.parcel-cache
2021

2122
# Diagnostic reports (https://nodejs.org/api/report.html)
2223
report.[0-9]*.[0-9]*.[0-9]*.[0-9]*.json

LEGAL.md

Lines changed: 37 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,37 @@
1+
# Legal Notice
2+
3+
**Summary**: This software is free to use and modify under the [MIT License](./LICENSE.md) for its source code. However, it includes patented technology that requires payment for use, facilitated through a cryptocurrency mechanism. You are responsible for complying with all applicable laws and bear full liability for your use of the software.
4+
5+
## Patent and Payment Notice
6+
7+
This software includes technology protected by US Patent Nos. 11694197 and 11188911. Using this patented technology, which forms a core part of the software’s functionality, requires payment through the software’s built-in cryptocurrency mechanism. The payment amount is determined automatically by the software, and the cryptocurrency used (e.g., BTC, LTC, DOGE) depends on the blockchain you select. For detailed payment instructions, please refer to the software's [documentation](https://github.com/bitcoin-computer/monorepo/blob/main/packages/docs/fees.md).
8+
9+
You may modify the software freely under the MIT License, but any use of the patented functionality, including in modified versions, requires compliance with these payment terms or obtaining an alternative license. Bypassing the payment mechanism while still using the patented technology may constitute patent infringement. For alternative licensing options, please contact [email protected].
10+
11+
You may use the software for free for testing purposes on testnet and regtest, as these environments use test coins with no real value. However, any use on mainnet or other production environments requires compliance with the payment terms outlined in this notice.
12+
13+
## Disclaimer Regarding User Modifications
14+
15+
**BCDB Does Not Endorse or Promote User Software Activity**. We are publishing certain portions of the Software, on an open-source basis, to demonstrate the utility of the Bitcoin Computer. As this Software is open-source, it may be modified and deployed for a wide range of uses that we may not have intended. We do not endorse or promote, and expressly disclaim liability for, any non-BCDB use or modification of the Software.
16+
17+
## Legal and Regulatory Compliance
18+
19+
**Sanctioned Users are Prohibited**. You may not access or use this software if you are (i) a resident of any country with which transactions or dealings are prohibited by governmental sanctions imposed by the U.S., the United Nations, the European Union, the United Kingdom, or any other applicable jurisdiction (collectively, “Sanctions Regimes”); (ii) a person, entity or government prohibited under an applicable Sanctions Regime (“Sanctioned Person”), including the Office of Foreign Assets Control, Specially Designated Nationals and Blocked Persons List; or (iii) prohibited from accessing or using the Software pursuant to the laws, rules, and regulations in the jurisdiction in which you reside or otherwise access and use the Software.
20+
21+
**Users Must Comply with Applicable Law**. You may only access or use the Software in compliance with laws, rules, and regulations in the jurisdiction in which you reside or otherwise access and use the Software, including, as applicable, Sanctions Regimes, anti-money laundering laws and regulations, and securities laws and regulations.
22+
23+
Additionally, you are solely responsible for ensuring that your cryptocurrency transactions comply with all applicable laws, including anti-money laundering and tax regulations in your jurisdiction.
24+
25+
## Liability Disclaimer and Indemnification
26+
27+
BCDB Inc. provides this software "as is," without any warranties, express or implied, including warranties of merchantability, fitness for a particular purpose, or non-infringement. BCDB Inc. shall not be liable for any direct, indirect, incidental, special, exemplary, or consequential damages resulting from your use or modification of the software.
28+
29+
By using this software, you agree to indemnify, defend, and hold harmless BCDB Inc. and its affiliates from any claims, damages, liabilities, or expenses (including attorneys’ fees and costs) arising from your use or modification of the software, including but not limited to violations of applicable laws or infringement of third-party rights.
30+
31+
## Intellectual Property
32+
33+
The patented technology is protected under US Patent Nos. 11694197 and 11188911. This patent applies in the United States only. If you are outside the US, you should review your local patent laws to understand any additional obligations.
34+
35+
## Contact Information
36+
37+
For questions, alternative licensing options, or further clarification, please contact [email protected].
Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,11 @@
1-
Copyright 2022 BCDB Inc.
1+
MIT License
2+
3+
Copyright (c) 2025 BCDB Inc.
24

35
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
46

57
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
68

79
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
10+
11+
**Note**: This license applies only to the copyright of the source code and documentation. For additional terms, including patent notices and payment requirements, see [LEGAL.md](./LEGAL.md).

README.md

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -57,6 +57,8 @@ See [here](https://docs.bitcoincomputer.io/start/).
5757
- [Docs](https://github.com/bitcoin-computer/monorepo/tree/main/packages/docs#readme) - The sources for the documentation
5858
- [Website](https://github.com/bitcoin-computer/monorepo/tree/main/packages/website#readme) - The sources for the website
5959

60-
## Legal Notice
60+
## License
6161

62-
See [here](https://github.com/bitcoin-computer/monorepo/tree/main/packages/lib#legal-notice).
62+
This software is licensed under the MIT License. See the [LICENSE.md](./LICENSE.md) file.
63+
64+
This software includes patented technology that requires payment for use on mainnet or production environments. Please review the [LEGAL.md](./LEGAL.md) file for details on patent usage and payment requirements.

0 commit comments

Comments
 (0)