Compare commits
	
		
			17 Commits
		
	
	
		
	
	| Author | SHA1 | Date | |
|---|---|---|---|
| 99096b2360 | |||
| 0e92459779 | |||
| a13eaaf523 | |||
| dca8d277d3 | |||
| 15c739c0b9 | |||
| fc2da972ef | |||
| e45eea7111 | |||
| 1e62d79c07 | |||
| c74c5ae5c0 | |||
| b0092c4a6e | |||
| 5ce6368c4a | |||
| 3e7e54da4b | |||
| 9f80d687b2 | |||
| 96411e877f | |||
| ac7e078c02 | |||
| 6fb8d1ba0c | |||
| 8d8374be24 | 
							
								
								
									
										4
									
								
								.gitignore
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										4
									
								
								.gitignore
									
									
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,4 @@
 | 
			
		||||
build-qbolt-*
 | 
			
		||||
dummy-data/dummy-data*
 | 
			
		||||
*.pro.user$
 | 
			
		||||
build/
 | 
			
		||||
@@ -1,5 +0,0 @@
 | 
			
		||||
mode:regexp
 | 
			
		||||
^build-qbolt-
 | 
			
		||||
^dummy-data/dummy-data$
 | 
			
		||||
\.pro\.user$
 | 
			
		||||
^build/
 | 
			
		||||
							
								
								
									
										20
									
								
								Makefile
									
									
									
									
									
								
							
							
						
						
									
										20
									
								
								Makefile
									
									
									
									
									
								
							@@ -1,7 +1,7 @@
 | 
			
		||||
 | 
			
		||||
export PATH := /usr/lib/mxe/usr/bin:$(PATH)
 | 
			
		||||
GOFLAGS := -ldflags='-s -w' -gcflags='-trimpath=$(CURDIR)' -asmflags='-trimpath=$(CURDIR)'
 | 
			
		||||
VERSION := 1.0.1
 | 
			
		||||
VERSION := 1.0.2
 | 
			
		||||
 | 
			
		||||
.PHONY: all libs dist clean
 | 
			
		||||
 | 
			
		||||
@@ -15,7 +15,6 @@ libs: \
 | 
			
		||||
	
 | 
			
		||||
dist: \
 | 
			
		||||
	build/dist/qbolt-${VERSION}-win32.zip \
 | 
			
		||||
	build/dist/qbolt-${VERSION}-src.tar.gz \
 | 
			
		||||
	build/dist/qbolt-${VERSION}-linux_amd64.tar.xz
 | 
			
		||||
 | 
			
		||||
clean:
 | 
			
		||||
@@ -51,18 +50,23 @@ build/dist/qbolt-${VERSION}-linux_amd64.tar.xz: build/linux/qbolt
 | 
			
		||||
build/win32/release/qbolt.exe: build/win32/qbolt.a qbolt/*
 | 
			
		||||
	cd build/win32 && i686-w64-mingw32.static-qmake-qt5 ../../qbolt/qbolt.pro && make
 | 
			
		||||
 | 
			
		||||
# Dockerized Windows build
 | 
			
		||||
 | 
			
		||||
.PHONY: build-docker-build-environment
 | 
			
		||||
build-docker-build-environment:
 | 
			
		||||
	cd docker && docker build -t win32-cross-qt-mxe:latest -f win32-cross-qt-mxe.Dockerfile 
 | 
			
		||||
 | 
			
		||||
.PHONY: build-windows-in-docker
 | 
			
		||||
build-windows-in-docker:
 | 
			
		||||
	docker run --rm -v $(CURDIR):/qbolt win32-cross-qt-mxe:latest /bin/sh -c 'cd /qbolt && make build/win32/release/qbolt.exe'
 | 
			
		||||
 | 
			
		||||
# Windows distribution
 | 
			
		||||
 | 
			
		||||
build/win32/dist/qbolt.exe: build/win32/release/qbolt.exe
 | 
			
		||||
	mkdir -p build/win32/dist
 | 
			
		||||
	cp build/win32/release/qbolt.exe build/win32/dist/qbolt.exe
 | 
			
		||||
	upx --lzma build/win32/dist/qbolt.exe
 | 
			
		||||
#	upx --lzma build/win32/dist/qbolt.exe
 | 
			
		||||
	
 | 
			
		||||
build/dist/qbolt-${VERSION}-win32.zip: build/win32/dist/qbolt.exe
 | 
			
		||||
	mkdir -p build/dist
 | 
			
		||||
	zip -0 -j build/dist/qbolt-${VERSION}-win32.zip build/win32/dist/qbolt.exe
 | 
			
		||||
 | 
			
		||||
# Source code archives
 | 
			
		||||
 | 
			
		||||
build/dist/qbolt-${VERSION}-src.tar.gz:
 | 
			
		||||
	hg archive build/dist/qbolt-${VERSION}-src.tar.gz
 | 
			
		||||
 
 | 
			
		||||
@@ -1,3 +1,5 @@
 | 
			
		||||
# qbolt
 | 
			
		||||
 | 
			
		||||
A graphical database manager for BoltDB.
 | 
			
		||||
 | 
			
		||||
QBolt allows you to graphically view and edit the content of Bolt databases.
 | 
			
		||||
@@ -6,7 +8,7 @@ The project consists of two parts; a C binding (CGo) for the embeddable Bolt dat
 | 
			
		||||
 | 
			
		||||
Written in C++ (Qt), Golang (CGo)
 | 
			
		||||
 | 
			
		||||
=FEATURES=
 | 
			
		||||
## Features
 | 
			
		||||
 | 
			
		||||
- Open existing database or create new database
 | 
			
		||||
- Option to open database as readonly for concurrent use
 | 
			
		||||
@@ -16,23 +18,32 @@ Written in C++ (Qt), Golang (CGo)
 | 
			
		||||
- 100% Bolt compatibility via the real codebase
 | 
			
		||||
- Tested working on both Windows and Linux
 | 
			
		||||
 | 
			
		||||
=LICENSE=
 | 
			
		||||
## License
 | 
			
		||||
 | 
			
		||||
Source code content of `qbolt-x.x.x-src.tar.gz` is released under the ISC license.
 | 
			
		||||
BoltDB is released under the MIT license.
 | 
			
		||||
The Windows binary is released under LGPL-3+ owing to the static copy of Qt.
 | 
			
		||||
 | 
			
		||||
=SEE ALSO=
 | 
			
		||||
## See also
 | 
			
		||||
 | 
			
		||||
- BoltDB https://github.com/boltdb/bolt
 | 
			
		||||
 | 
			
		||||
=CHANGELOG=
 | 
			
		||||
## Changelog
 | 
			
		||||
 | 
			
		||||
2020-04-12 1.0.2
 | 
			
		||||
- Rebuild artefacts with etcd-io/bbolt v1.3.5, go 1.15, Qt 5.15, and new GCC versions
 | 
			
		||||
- Switch from hg to Git
 | 
			
		||||
- Use Go modules
 | 
			
		||||
- Add support for building Windows binary in Docker
 | 
			
		||||
- [⬇ Download here](https://git.ivysaur.me/code.ivysaur.me/qbolt/releases/tag/v1.0.2)
 | 
			
		||||
 | 
			
		||||
2017-06-19 1.0.1
 | 
			
		||||
- Feature: Option to open database as read-only
 | 
			
		||||
- Fix an issue with support for bucket names and keys not surviving UTF-8 roundtrips (now binary-clean)
 | 
			
		||||
- Fix an issue with crashing when deleting a bucket other than the selected one
 | 
			
		||||
- Fix a cosmetic issue with application icon on Windows
 | 
			
		||||
- [⬇ Download here](https://git.ivysaur.me/code.ivysaur.me/qbolt/releases/tag/v1.0.1)
 | 
			
		||||
 | 
			
		||||
2017-05-21 1.0.0
 | 
			
		||||
- Initial public release
 | 
			
		||||
- [⬇ Download here](https://git.ivysaur.me/code.ivysaur.me/qbolt/releases/tag/v1.0.0)
 | 
			
		||||
@@ -1,9 +0,0 @@
 | 
			
		||||
 | 
			
		||||
- Reduce unnecessary memory copies between QString/QByteArray
 | 
			
		||||
 | 
			
		||||
- Convert from item-based to model-based Qt widgets - needs deep integration with Bolt cursors...
 | 
			
		||||
 | 
			
		||||
- Rename buckets
 | 
			
		||||
 | 
			
		||||
- Delete multiple buckets
 | 
			
		||||
 | 
			
		||||
							
								
								
									
										13
									
								
								docker/win32-cross-qt-mxe.Dockerfile
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										13
									
								
								docker/win32-cross-qt-mxe.Dockerfile
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,13 @@
 | 
			
		||||
FROM debian:bullseye
 | 
			
		||||
 | 
			
		||||
RUN DEBIAN_FRONTEND=noninteractive apt-get update && \
 | 
			
		||||
    apt-get install -qyy gnupg2 golang-go ca-certificates
 | 
			
		||||
 | 
			
		||||
RUN DEBIAN_FRONTEND=noninteractive \
 | 
			
		||||
    echo "deb https://pkg.mxe.cc/repos/apt buster main" >/etc/apt/sources.list.d/mxeapt.list && \
 | 
			
		||||
    apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 86B72ED9 && \
 | 
			
		||||
    apt-get update && \
 | 
			
		||||
    apt-get install -qyy mxe-i686-w64-mingw32.static-qt5 && \
 | 
			
		||||
    apt-get clean
 | 
			
		||||
 | 
			
		||||
ENV PATH=/usr/lib/mxe/usr/bin:$PATH
 | 
			
		||||
@@ -5,7 +5,7 @@ import (
 | 
			
		||||
	"math/rand"
 | 
			
		||||
	"os"
 | 
			
		||||
 | 
			
		||||
	"github.com/boltdb/bolt"
 | 
			
		||||
	bolt "github.com/boltdb/bolt"
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
func random_name() string {
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										7
									
								
								go.mod
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										7
									
								
								go.mod
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,7 @@
 | 
			
		||||
module code.ivysaur.me/qbolt
 | 
			
		||||
 | 
			
		||||
go 1.15
 | 
			
		||||
 | 
			
		||||
require github.com/boltdb/bolt v1.3.1
 | 
			
		||||
 | 
			
		||||
replace github.com/boltdb/bolt => go.etcd.io/bbolt v1.3.5
 | 
			
		||||
							
								
								
									
										5
									
								
								go.sum
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										5
									
								
								go.sum
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,5 @@
 | 
			
		||||
github.com/boltdb/bolt v1.3.1 h1:JQmyP4ZBrce+ZQu0dY660FMfatumYDLun9hBCUVIkF4=
 | 
			
		||||
github.com/boltdb/bolt v1.3.1/go.mod h1:clJnj/oiGkjum5o1McbSZDSLxVThjynRyGBgiAx27Ps=
 | 
			
		||||
go.etcd.io/bbolt v1.3.5 h1:XAzx9gjCb0Rxj7EoqcClPD1d5ZBxZJk0jbuoPHenBt0=
 | 
			
		||||
go.etcd.io/bbolt v1.3.5/go.mod h1:G5EMThwa9y8QZGBClrRx5EY+Yw9kAhnjy3bSjsnlVTQ=
 | 
			
		||||
golang.org/x/sys v0.0.0-20200202164722-d101bd2416d5/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
 | 
			
		||||
							
								
								
									
										2
									
								
								main.go
									
									
									
									
									
								
							
							
						
						
									
										2
									
								
								main.go
									
									
									
									
									
								
							@@ -8,7 +8,7 @@ import (
 | 
			
		||||
	"os"
 | 
			
		||||
	"time"
 | 
			
		||||
 | 
			
		||||
	"github.com/boltdb/bolt"
 | 
			
		||||
	bolt "github.com/boltdb/bolt"
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
const (
 | 
			
		||||
 
 | 
			
		||||
@@ -26,6 +26,7 @@ win32: {
 | 
			
		||||
 | 
			
		||||
linux: {
 | 
			
		||||
    QMAKE_LIBS += $$_PRO_FILE_PWD_/../build/linux/qbolt.a
 | 
			
		||||
    QMAKE_LIBS += -lpthread
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
SOURCES += main.cpp\
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user