fastqr 1.0.20 → 1.0.21

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 2adf635a20a9a1800335ce1840a44f0e3e630d120afe3cef582867e0983dc67f
4
- data.tar.gz: a7840498766928817ab8bd994cf996d8ab7ba11711f0ee7a8cf679fbea46388c
3
+ metadata.gz: 766594181db4a767babbf28073821f652e841b78503a770af6200e67004c06ba
4
+ data.tar.gz: f92b0664663b8a7d226971d709d3b9ee1ced6502f942eb3b2ddb3eb668653a67
5
5
  SHA512:
6
- metadata.gz: 31b5cf58a180e2c6d74bea3197e011793ef1abbac6d79451c523a5ebbb8de8236d3fdff9a6a54ca7a4179b826b29186f31ad1fa9877c563d31a53dda42625a5e
7
- data.tar.gz: 5789a76ebb4c690960db803f455b610f701d367fc4ca6d23f28f583b3055c57d41b9993f27017f56d2b9077f850d513ad1a1e04a52e9c54083b942baddcd2d2f
6
+ metadata.gz: 9753655dab955c9610e307ef4ff20aa53ee1b6a2966fb56a19fbe80f28623190f6e0ba4b81af2288ee4885e7d49d06170b27f9cfc3e25a5a097fdd967ca1a136
7
+ data.tar.gz: 1497c75a6eeb10e852b42889ff499999148ae8bdbaf80f51600aeb8d131e8c109cc094f6b7b5d6df97d1b6dfdd84c3855c32eb62d2f5f1d3360052841ed62e3a
data/BUILD.md CHANGED
@@ -1,6 +1,6 @@
1
1
  # Building FastQR from Source
2
2
 
3
- This guide explains how to build FastQR from source, including building with custom versions of libqrencode and libvips (as required by LGPL).
3
+ This guide explains how to build FastQR from source, including building with custom versions of libqrencode (as required by LGPL).
4
4
 
5
5
  ## 📋 Requirements
6
6
 
@@ -13,7 +13,7 @@ This guide explains how to build FastQR from source, including building with cus
13
13
  ### Dependencies
14
14
 
15
15
  - **libqrencode** (version 4.0+)
16
- - **libvips** (version 8.10+)
16
+ - **libpng**
17
17
 
18
18
  ## 🍎 macOS
19
19
 
@@ -21,7 +21,7 @@ This guide explains how to build FastQR from source, including building with cus
21
21
 
22
22
  ```bash
23
23
  # Using Homebrew
24
- brew install cmake qrencode vips pkg-config
24
+ brew install cmake qrencode libpng pkg-config
25
25
 
26
26
  # Or build from source (see below)
27
27
  ```
@@ -72,29 +72,6 @@ make
72
72
  sudo make install
73
73
  ```
74
74
 
75
- ### Build with Custom libvips
76
-
77
- ```bash
78
- # Install libvips dependencies
79
- brew install glib libpng libjpeg libexif
80
-
81
- # Build libvips from source
82
- cd /tmp
83
- git clone https://github.com/libvips/libvips.git
84
- cd libvips
85
- ./autogen.sh
86
- ./configure --prefix=/usr/local
87
- make
88
- sudo make install
89
-
90
- # Build FastQR
91
- cd /path/to/fastqr
92
- mkdir build && cd build
93
- cmake .. -DCMAKE_PREFIX_PATH=/usr/local
94
- make
95
- sudo make install
96
- ```
97
-
98
75
  ## 🐧 Ubuntu/Debian
99
76
 
100
77
  ### Install Dependencies
@@ -107,7 +84,7 @@ sudo apt-get install -y \
107
84
  cmake \
108
85
  pkg-config \
109
86
  libqrencode-dev \
110
- libvips-dev \
87
+ libpng-dev \
111
88
  git
112
89
  ```
113
90
 
@@ -161,37 +138,6 @@ make
161
138
  sudo make install
162
139
  ```
163
140
 
164
- ### Build with Custom libvips
165
-
166
- ```bash
167
- # Install libvips dependencies
168
- sudo apt-get install -y \
169
- libglib2.0-dev \
170
- libexpat1-dev \
171
- libjpeg-dev \
172
- libpng-dev \
173
- libwebp-dev \
174
- libtiff-dev \
175
- libexif-dev
176
-
177
- # Build libvips
178
- cd /tmp
179
- git clone https://github.com/libvips/libvips.git
180
- cd libvips
181
- ./autogen.sh
182
- ./configure --prefix=/usr/local
183
- make
184
- sudo make install
185
- sudo ldconfig
186
-
187
- # Build FastQR
188
- cd /path/to/fastqr
189
- mkdir build && cd build
190
- cmake .. -DCMAKE_PREFIX_PATH=/usr/local
191
- make
192
- sudo make install
193
- ```
194
-
195
141
  ## 🪟 Windows (MSVC)
196
142
 
197
143
  ### Install Dependencies
@@ -212,7 +158,7 @@ cd vcpkg
212
158
 
213
159
  ```powershell
214
160
  .\vcpkg install qrencode:x64-windows
215
- .\vcpkg install vips:x64-windows
161
+ .\vcpkg install libpng:x64-windows
216
162
  ```
217
163
 
218
164
  ### Build FastQR
@@ -365,15 +311,6 @@ pkg-config --modversion libqrencode
365
311
  export PKG_CONFIG_PATH=/usr/local/lib/pkgconfig:$PKG_CONFIG_PATH
366
312
  ```
367
313
 
368
- ### "vips.h not found"
369
-
370
- ```bash
371
- # Make sure vips is installed
372
- pkg-config --modversion vips
373
-
374
- # If not found, install or add to PKG_CONFIG_PATH
375
- export PKG_CONFIG_PATH=/usr/local/lib/pkgconfig:$PKG_CONFIG_PATH
376
- ```
377
314
 
378
315
  ### "Library not found" at runtime
379
316
 
@@ -397,8 +334,8 @@ sudo ldconfig
397
334
  cmake .. \
398
335
  -DQRENCODE_INCLUDE_DIR=/usr/local/include \
399
336
  -DQRENCODE_LIBRARY=/usr/local/lib/libqrencode.a \
400
- -DVIPS_INCLUDE_DIR=/usr/local/include \
401
- -DVIPS_LIBRARY=/usr/local/lib/libvips.a
337
+ -DPNG_INCLUDE_DIR=/usr/local/include \
338
+ -DPNG_LIBRARY=/usr/local/lib/libpng.a
402
339
  ```
403
340
 
404
341
  ### Ruby gem fails to build
@@ -433,12 +370,11 @@ node-gyp build
433
370
 
434
371
  FastQR uses **LGPL 2.1** license and statically links with:
435
372
  - libqrencode (LGPL 2.1)
436
- - libvips (LGPL 2.1+)
437
373
 
438
374
  As required by LGPL, you can:
439
375
 
440
- 1. **Replace the library**: Build FastQR with different versions of libqrencode/libvips using the instructions above
441
- 2. **Modify the library**: Fork and modify libqrencode/libvips, then build FastQR against your modified versions
376
+ 1. **Replace the library**: Build FastQR with different versions of libqrencode using the instructions above
377
+ 2. **Modify the library**: Fork and modify libqrencode, then build FastQR against your modified versions
442
378
  3. **Link dynamically**: Use `-DBUILD_SHARED_LIBS=ON` to build shared library instead of static
443
379
 
444
380
  ### Example: Using Modified libqrencode
@@ -477,6 +413,6 @@ If you encounter issues:
477
413
 
478
414
  - [CMake Documentation](https://cmake.org/documentation/)
479
415
  - [libqrencode](https://github.com/fukuchi/libqrencode)
480
- - [libvips](https://github.com/libvips/libvips)
416
+ - [libpng](http://www.libpng.org/pub/png/libpng.html)
481
417
  - [LGPL v2.1 License](https://www.gnu.org/licenses/old-licenses/lgpl-2.1.html)
482
418
 
data/CHANGELOG.md CHANGED
@@ -9,7 +9,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
9
9
 
10
10
  ### Added
11
11
  - Initial release of FastQR
12
- - Core C++ library with libqrencode and libvips integration
12
+ - Core C++ library with libqrencode and libpng integration
13
13
  - Full UTF-8 support (Vietnamese, Japanese, Chinese, emoji, etc.)
14
14
  - Custom color support for QR code and background
15
15
  - Precise size control (exact pixel dimensions)
data/CMakeLists.txt CHANGED
@@ -1,5 +1,5 @@
1
1
  cmake_minimum_required(VERSION 3.15)
2
- project(fastqr VERSION 1.0.20 LANGUAGES CXX C)
2
+ project(fastqr VERSION 1.0.21 LANGUAGES CXX C)
3
3
 
4
4
  set(CMAKE_CXX_STANDARD 14)
5
5
  set(CMAKE_CXX_STANDARD_REQUIRED ON)
data/DISTRIBUTION.md CHANGED
@@ -41,7 +41,7 @@ class Fastqr < Formula
41
41
 
42
42
  depends_on "cmake" => :build
43
43
  depends_on "qrencode"
44
- depends_on "vips"
44
+ depends_on "libpng"
45
45
 
46
46
  def install
47
47
  system "cmake", "-S", ".", "-B", "build", *std_cmake_args
@@ -97,7 +97,7 @@ brew tap tranhuucanh/fastqr
97
97
  brew install fastqr
98
98
  ```
99
99
 
100
- **Note**: Homebrew automatically installs dependencies (qrencode and vips), so users don't need to install them manually.
100
+ **Note**: Homebrew automatically installs dependencies (qrencode and libpng), so users don't need to install them manually.
101
101
 
102
102
  ---
103
103
 
@@ -125,13 +125,13 @@ Source: fastqr
125
125
  Section: utils
126
126
  Priority: optional
127
127
  Maintainer: Your Name <your.email@example.com>
128
- Build-Depends: debhelper (>= 10), cmake, libqrencode-dev, libvips-dev
128
+ Build-Depends: debhelper (>= 10), cmake, libqrencode-dev, libpng-dev
129
129
  Standards-Version: 4.1.3
130
130
  Homepage: https://github.com/tranhuucanh/fastqr
131
131
 
132
132
  Package: fastqr
133
133
  Architecture: any
134
- Depends: ${shlibs:Depends}, ${misc:Depends}, libqrencode4, libvips42
134
+ Depends: ${shlibs:Depends}, ${misc:Depends}, libqrencode4, libpng16-16
135
135
  Description: Fast QR code generator with UTF-8 support
136
136
  FastQR is a fast QR code generator with full UTF-8 support,
137
137
  custom colors, logo embedding, and precise size control.
@@ -233,7 +233,7 @@ ruby -r fastqr -e "puts FastQR.version"
233
233
  gem uninstall fastqr
234
234
  ```
235
235
 
236
- **Important**: The gem now includes pre-built binaries, so users don't need to install libqrencode or libvips separately!
236
+ **Important**: The gem now includes pre-built binaries, so users don't need to install libqrencode separately!
237
237
 
238
238
  ### Step 3: Create RubyGems Account
239
239
 
@@ -259,7 +259,7 @@ gem push fastqr-1.0.0.gem
259
259
  # Users can now install with just:
260
260
  gem install fastqr
261
261
 
262
- # No need to install qrencode or vips!
262
+ # No need to install qrencode!
263
263
 
264
264
  # Or via Gemfile:
265
265
  # gem 'fastqr', '~> 1.0'
@@ -309,10 +309,10 @@ node test/test.js
309
309
 
310
310
  # Test installation from tarball
311
311
  npm pack
312
- npm install fastqr-1.0.0.tgz
312
+ npm install fastqr-pro-1.0.0.tgz
313
313
  ```
314
314
 
315
- **Important**: The npm package now includes pre-built binaries, so users don't need to install libqrencode or libvips separately!
315
+ **Important**: The npm package now includes pre-built binaries, so users don't need to install libqrencode separately!
316
316
 
317
317
  ### Step 3: Create npm Account
318
318
 
@@ -341,9 +341,9 @@ npm publish
341
341
 
342
342
  ```bash
343
343
  # Users can now install with just:
344
- npm install fastqr
344
+ npm install fastqr-pro
345
345
 
346
- # No need to install qrencode or vips!
346
+ # No need to install qrencode!
347
347
 
348
348
  # Or via package.json:
349
349
  # "dependencies": {
@@ -409,7 +409,7 @@ File `composer.json` is already prepared at root. Review it:
409
409
  3. Click "Check"
410
410
  4. If valid, click "Submit"
411
411
 
412
- **Important**: The composer package now includes pre-built binaries in the repository (via GitHub Actions), so users don't need to install libqrencode or libvips separately!
412
+ **Important**: The composer package now includes pre-built binaries in the repository (via GitHub Actions), so users don't need to install libqrencode separately!
413
413
 
414
414
  ### Step 4: Setup Auto-Update (Recommended)
415
415
 
@@ -447,7 +447,7 @@ git push origin v1.0.0
447
447
  # Users can now install with just:
448
448
  composer require fastqr/fastqr
449
449
 
450
- # No need to install qrencode or vips!
450
+ # No need to install qrencode!
451
451
 
452
452
  # Or via composer.json:
453
453
  # "require": {
@@ -713,7 +713,7 @@ These binaries are automatically bundled in:
713
713
 
714
714
  **This means users can install with just:**
715
715
  - `gem install fastqr` - no system dependencies needed!
716
- - `npm install fastqr` - no system dependencies needed!
716
+ - `npm install fastqr-pro` - no system dependencies needed!
717
717
  - `composer require fastqr/fastqr` - no system dependencies needed!
718
718
 
719
719
  The binaries are built automatically by GitHub Actions on every tagged release.
@@ -725,6 +725,6 @@ The binaries are built automatically by GitHub Actions on every tagged release.
725
725
  1. Include LICENSE file
726
726
  2. Include link to source code
727
727
  3. Include BUILD.md with build instructions
728
- 4. State that the package uses libqrencode and libvips
728
+ 4. State that the package uses libqrencode
729
729
 
730
730
  This ensures LGPL requirements are met for static linking.
data/INSTALL.md CHANGED
@@ -22,7 +22,7 @@ gem install fastqr
22
22
 
23
23
  **Node.js (npm):**
24
24
  ```bash
25
- npm install fastqr
25
+ npm install fastqr-pro
26
26
  ```
27
27
 
28
28
  **PHP (Composer):**
@@ -39,13 +39,13 @@ composer require fastqr/fastqr
39
39
  - C++14 compatible compiler
40
40
  - CMake 3.15+
41
41
  - libqrencode 4.0+
42
- - libvips 8.10+
42
+ - libpng
43
43
 
44
44
  ### macOS
45
45
 
46
46
  ```bash
47
47
  # Install dependencies
48
- brew install cmake qrencode vips
48
+ brew install cmake qrencode libpng
49
49
 
50
50
  # Clone and build
51
51
  git clone https://github.com/tranhuucanh/fastqr.git
@@ -62,7 +62,7 @@ sudo make install
62
62
  ```bash
63
63
  # Install dependencies
64
64
  sudo apt-get update
65
- sudo apt-get install -y cmake libqrencode-dev libvips-dev build-essential
65
+ sudo apt-get install -y cmake libqrencode-dev libpng-dev build-essential
66
66
 
67
67
  # Clone and build
68
68
  git clone https://github.com/tranhuucanh/fastqr.git
data/LICENSE CHANGED
@@ -31,9 +31,7 @@ Copyright (C) 2025 FastQR Project
31
31
 
32
32
  This project statically links with:
33
33
  - libqrencode (LGPL v2.1) - Copyright (C) 2006-2017 Kentaro Fukuchi
34
- - libvips (LGPL v2.1+) - Copyright (C) 1989-2021 Imperial College, London
35
34
 
36
35
  As required by the LGPL, you can obtain the source code and rebuild this
37
- library with modified versions of libqrencode and libvips. See BUILD.md
38
- for instructions.
36
+ library with modified versions of libqrencode. See BUILD.md for instructions.
39
37
 
data/PREBUILT.md CHANGED
@@ -4,7 +4,7 @@ This document describes how pre-built binaries are generated and distributed for
4
4
 
5
5
  ## Overview
6
6
 
7
- Starting from v1.0.0, FastQR includes pre-built binaries in all language packages (Ruby, Node.js, PHP). This means users can install packages without needing to install system dependencies (libqrencode, libvips).
7
+ Starting from v1.0.0, FastQR includes pre-built binaries in all language packages (Ruby, Node.js, PHP). This means users can install packages without needing to install system dependencies (libqrencode).
8
8
 
9
9
  ## Supported Platforms
10
10
 
@@ -61,7 +61,7 @@ platform.getPrebuiltPath() // => Path to pre-built binary
61
61
  **npm Package:**
62
62
  - Pre-built binaries are included in `bindings/nodejs/prebuilt/`
63
63
  - Package is published to npm
64
- - Users: `npm install fastqr` (no dependencies needed!)
64
+ - Users: `npm install fastqr-pro` (no dependencies needed!)
65
65
 
66
66
  **Composer Package:**
67
67
  - Pre-built binaries are committed to repository in `bindings/php/prebuilt/`
@@ -153,7 +153,7 @@ platform/
153
153
 
154
154
  ## License Compliance
155
155
 
156
- Pre-built binaries statically link libqrencode and libvips (both LGPL 2.1).
156
+ Pre-built binaries statically link libqrencode (LGPL 2.1).
157
157
 
158
158
  To comply with LGPL:
159
159
  1. LICENSE file is included in all packages