mirror of
https://github.com/fluencelabs/sqlite
synced 2025-04-24 17:02:14 +00:00
Compare commits
6 Commits
sqlite-was
...
master
Author | SHA1 | Date | |
---|---|---|---|
|
ce194e3fd3 | ||
|
13a62f2b10 | ||
|
d1905792d4 | ||
|
94366b95ae | ||
|
0feed3f180 | ||
|
f0d4881845 |
2
.github/release-please/manifest.json
vendored
2
.github/release-please/manifest.json
vendored
@ -1,3 +1,3 @@
|
||||
{
|
||||
".": "0.18.1"
|
||||
".": "0.18.2"
|
||||
}
|
||||
|
17
.github/workflows/build.yml
vendored
17
.github/workflows/build.yml
vendored
@ -27,23 +27,12 @@ jobs:
|
||||
mv wasi-sdk-* wasi-sdk
|
||||
|
||||
- name: Setup Rust toolchain
|
||||
uses: actions-rust-lang/setup-rust-toolchain@v1
|
||||
|
||||
- name: Download marine artifact
|
||||
id: marine
|
||||
uses: actions/download-artifact@v3
|
||||
continue-on-error: true
|
||||
with:
|
||||
name: marine
|
||||
path: ~/.local/bin
|
||||
|
||||
- name: Make marine executable
|
||||
if: steps.marine.outcome == 'success'
|
||||
run: chmod +x ~/.local/bin/marine
|
||||
uses: dsherret/rust-toolchain-file@v1
|
||||
|
||||
- name: Setup marine
|
||||
if: steps.marine.outcome == 'failure'
|
||||
uses: fluencelabs/setup-marine@v1
|
||||
with:
|
||||
artifact-name: "marine"
|
||||
|
||||
- name: Build sqlite-wasm
|
||||
run: make
|
||||
|
48
.github/workflows/e2e.yml
vendored
48
.github/workflows/e2e.yml
vendored
@ -30,6 +30,9 @@ concurrency:
|
||||
jobs:
|
||||
build:
|
||||
name: "sqlite"
|
||||
if: >
|
||||
github.event_name == 'push' ||
|
||||
contains(github.event.pull_request.labels.*.name, 'e2e')
|
||||
uses: ./.github/workflows/build.yml
|
||||
with:
|
||||
ref: ${{ github.ref }}
|
||||
@ -53,11 +56,26 @@ jobs:
|
||||
}
|
||||
]
|
||||
|
||||
rust-peer:
|
||||
decider:
|
||||
needs:
|
||||
- spell
|
||||
uses: fluencelabs/decider/.github/workflows/snapshot.yml@main
|
||||
with:
|
||||
cargo-dependencies: |
|
||||
[
|
||||
{
|
||||
"package": "fluence-spell-dtos",
|
||||
"version": "=${{ needs.spell.outputs.cargo-version }}",
|
||||
"registry": "fluence"
|
||||
}
|
||||
]
|
||||
|
||||
uses: fluencelabs/rust-peer/.github/workflows/build.yml@master
|
||||
nox:
|
||||
needs:
|
||||
- spell
|
||||
- decider
|
||||
|
||||
uses: fluencelabs/nox/.github/workflows/build.yml@master
|
||||
with:
|
||||
cargo-dependencies: |
|
||||
[
|
||||
@ -70,35 +88,39 @@ jobs:
|
||||
"package": "fluence-spell-distro",
|
||||
"version": "=${{ needs.spell.outputs.cargo-version }}",
|
||||
"registry": "fluence"
|
||||
},
|
||||
{
|
||||
"package": "decider-distro",
|
||||
"version": "=${{ needs.decider.outputs.cargo-version }}",
|
||||
"manifest": "crates/system-services/Cargo.toml",
|
||||
"registry": "fluence"
|
||||
}
|
||||
]
|
||||
|
||||
rust-peer-snapshot:
|
||||
name: "rust-peer"
|
||||
nox-snapshot:
|
||||
name: "nox"
|
||||
needs:
|
||||
- rust-peer
|
||||
- nox
|
||||
|
||||
uses: fluencelabs/rust-peer/.github/workflows/container.yml@master
|
||||
uses: fluencelabs/nox/.github/workflows/container.yml@master
|
||||
with:
|
||||
image-name: "docker.fluence.dev/sqlite-wasm-connector"
|
||||
flavour: "minimal"
|
||||
rust-peer-sha: "${{ needs.rust-peer.outputs.rust-peer-sha }}"
|
||||
image-name: "docker.fluence.dev/sqlite"
|
||||
|
||||
spell-aqua-tests:
|
||||
name: "spell"
|
||||
needs:
|
||||
- rust-peer-snapshot
|
||||
- nox-snapshot
|
||||
uses: fluencelabs/spell/.github/workflows/tests.yml@main
|
||||
with:
|
||||
rust-peer-image: "${{ needs.rust-peer-snapshot.outputs.rust-peer-image }}"
|
||||
nox-image: "${{ needs.nox-snapshot.outputs.nox-image }}"
|
||||
|
||||
registry:
|
||||
needs:
|
||||
- snapshot
|
||||
- rust-peer-snapshot
|
||||
- nox-snapshot
|
||||
uses: fluencelabs/registry/.github/workflows/tests.yml@main
|
||||
with:
|
||||
rust-peer-image: "${{ needs.rust-peer-snapshot.outputs.rust-peer-image }}"
|
||||
nox-image: "${{ needs.nox-snapshot.outputs.nox-image }}"
|
||||
cargo-dependencies: |
|
||||
[
|
||||
{
|
||||
|
@ -1,5 +1,12 @@
|
||||
# Changelog
|
||||
|
||||
## [0.18.2](https://github.com/fluencelabs/sqlite/compare/sqlite-wasm-v0.18.1...sqlite-wasm-v0.18.2) (2023-12-25)
|
||||
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
* fix use-after-free when using sqlite_bind_text/sqlite_bind_blob with sqlite_step ([#24](https://github.com/fluencelabs/sqlite/issues/24)) ([13a62f2](https://github.com/fluencelabs/sqlite/commit/13a62f2b1017e2e5e860951bf01516c0aea739a0))
|
||||
|
||||
## [0.18.1](https://github.com/fluencelabs/sqlite/compare/sqlite-wasm-v0.18.0...sqlite-wasm-v0.18.1) (2023-04-06)
|
||||
|
||||
|
||||
|
@ -7,10 +7,9 @@ RUN apt update \
|
||||
git \
|
||||
make \
|
||||
pkg-config \
|
||||
libtinfo6 \
|
||||
cargo
|
||||
libtinfo6
|
||||
|
||||
RUN cargo install marine --version 0.12.7
|
||||
RUN mkdir -p ~/.local/bin && curl -L https://github.com/fluencelabs/marine/releases/download/marine-v0.14.1/marine-linux-x86_64 -o ~/.local/bin/marine && chmod +x ~/.local/bin/marine
|
||||
|
||||
VOLUME /code
|
||||
WORKDIR /code
|
||||
|
@ -1,4 +1,5 @@
|
||||
export PATH="${PATH}:/root/.cargo/bin"
|
||||
export PATH="${PATH}:/root/.cargo/bin:/root/.local/bin"
|
||||
curl -L https://github.com/WebAssembly/wasi-sdk/releases/download/wasi-sdk-15/wasi-sdk-15.0-linux.tar.gz | tar xz -C .
|
||||
mv wasi-sdk-* wasi-sdk
|
||||
rm -rf wasi-sdk
|
||||
mv -f wasi-sdk-* wasi-sdk
|
||||
make
|
||||
|
9
rust-toolchain.toml
Normal file
9
rust-toolchain.toml
Normal file
@ -0,0 +1,9 @@
|
||||
[toolchain]
|
||||
channel = "nightly-2023-08-27"
|
||||
components = [
|
||||
"rustfmt",
|
||||
"clippy",
|
||||
]
|
||||
targets = [
|
||||
"x86_64-unknown-linux-gnu",
|
||||
]
|
@ -1537,11 +1537,11 @@ int sqlite3_bind_blob_(sqlite3_stmt *pStmt, int i, const void *zData, int nData,
|
||||
return SQLITE_MISUSE_BKPT;
|
||||
#endif
|
||||
|
||||
// xDel is a custom deallocator and if it is not SQLITE_STATIC
|
||||
// due to our IT architecture it can't be provided from other modules.
|
||||
// xDel is a custom deallocator and due to our IT architecture it can't be provided from other modules.
|
||||
// However the memory zData uses has to be cleaned up eventually.
|
||||
// So, it is cleared as intended in IT, and xDel is set to SQLITE_TRANSIENT to make sqlite copy the data.
|
||||
add_object_to_release((void*)zData);
|
||||
return bindText(pStmt, i, zData, nData, xDel, 0);
|
||||
return bindText(pStmt, i, zData, nData, SQLITE_TRANSIENT, 0);
|
||||
}
|
||||
#endif
|
||||
|
||||
@ -1613,11 +1613,11 @@ int sqlite3_bind_text(sqlite3_stmt *pStmt, int i, const char *zData, int nData,
|
||||
int sqlite3_bind_text_(sqlite3_stmt *pStmt, int i, const char *zData, int nData,
|
||||
void (*xDel)(void *))
|
||||
__attribute__((export_name("sqlite3_bind_text"))) {
|
||||
// xDel is a custom deallocator and if it is not SQLITE_STATIC
|
||||
// due to our IT architecture it can't be provided from other modules.
|
||||
// xDel is a custom deallocator and due to our IT architecture it can't be provided from other modules.
|
||||
// However the memory zData uses has to be cleaned up eventually.
|
||||
// So, it is cleared as intended in IT, and xDel is set to SQLITE_TRANSIENT to make sqlite copy the data.
|
||||
add_object_to_release((void*)zData);
|
||||
return bindText(pStmt, i, zData, nData, xDel, SQLITE_UTF8);
|
||||
return bindText(pStmt, i, zData, nData, SQLITE_TRANSIENT, SQLITE_UTF8);
|
||||
}
|
||||
#endif
|
||||
|
||||
|
@ -1 +1 @@
|
||||
0.18.1
|
||||
0.18.2
|
||||
|
Loading…
x
Reference in New Issue
Block a user