Merger Versions Save

Lightweight, Integrated QR Code Payment Interface - https://demo.qrcdn.com

0.28.4

10 months ago

The last production release of this project was 0.27.0, which was a year and a half ago.

Throughout this time period, despite grave challenges in the maintainer's personal circumstances, they released 0.27.1 (Pre-release), 0.28.0-beta, 0.28.0-rc, 0.28.1-beta and 0.28.2-beta, all gradually improving the experience over this project bits by bits.

Today, we are proud to bring you the next major version, 0.28.4. Here's what's changed:

News

🎉 merger now on cdnjs (and its mirrors!)

🥤 Gulp Support Enables Custom-Built Assets and Minification

  • As a part of 0.28.0-rc (#35), we have added gulp support to the project. Previously, merger was nothing more than a single-page HTML application, with minification of html and other asset files done via external integrations.
    • The addition of gulp enables a one-stop shop for html/css/js minification & bundling. In addition, via the npm run build command, a compressed merger site will be exported to the /build directory, preserving all of your customisations made to the code.

🚫 Tenpay (QQ Wallet) Support has been Dropped

  • Due to limitations placed on the QQ Mobile app making scanning QR Code to open merger extremely difficult, while the QQ Wallet holds very little market share and usage today, we have decided to drop support for Tenpay (QQ Wallet)
    • This means the qrcodeapi variable is no longer necessary, while relevant code enabling QQ Wallet support was wholly removed

Changes

Breaking

  • 6f61852561bb45893c80061c1dfcf593b80487e0 249924a2fc3c5c5feda4f22afc39fefd9d4a38ea fe296a42a4f913571754252f39694bb9302ea554 Tenpay (QQ Wallet) support has been dropped due to limitations on QR Code scanning and recognising placed by QQ

Optimisations

  • a96fe30d6fe32682b9eb4856bd6390af0b98cc54 Changed font families under different langauges for better experiences on some devices.
  • 1b43f9647c42c4e34044ed52024ed5b20b8f8718 The loading of the avatar has been prioritised. This is accommplished by putting the relevant JavaScript code before loading external JavaScripts.
  • 9a6d5bf436649d5c1f03e4527cf349ad0932fd88 Avatars are now loading avaptively in respect to the device screen size, rounded to the nearest 50px, ranging from 200-500 px.
  • 9b797e7ff60525414a236cd492e81215827d44fc Update DNS Preconnect header for better speed.
  • 4f8f0f079e556e4ebe6f3432d4f4d0923556ee1d Slightly improved performance achieved by moving the MD5 function around.
  • 0f5dfaaa5a803995748fb0d3f9f6551d1dbeb44f After some considerations, the placeholder avatar, considering it's rare practicality, will be loaded remotely on-demand, reversing 088a72c550f9261b09360742f7ebcc2daef0dbe7
  • 4ec7f71d6dd57e086408098523a54c6b7dd864b5 The gravatar_url has been changed to sdn.geekzu.org due to the official source experiencing connection_reset issue regionally in China
    • gravatar.loli.net is removed due to a bug on its caching behavour, neglecting the ?s=xxx parameter
    • cravatar.cn was considered but appearenly it involves censorship mechanisms, while confidence is lacked from this project in regards to its long-term sustainability and fundamental philosophy
  • 249924a2fc3c5c5feda4f22afc39fefd9d4a38ea The logic in verifying whether profile is link or email has been improved to be nearer a good practice
  • d64d207d43d4fc58b6b1d0b88402c08ccaac2144 s1.pstatp.com has been dropped due to its lack of synchronisation; cdn.staticfile.org is now being used, which still offers global CDNs
    • 006d0ccadc2ff33c4f5fdddfcc032ac7a87d226a jQuery has been updated to 3.7.0
  • d986ce3b74496ded39d3f35c224ecf5b9c655032 a1c7f047479367b626368c52deb4b3d69bf9c5ac preconnect headers has been correspondingly updated

Developer Experience

  • 2ece0f377059e3f010f4c06067f496b1730b827e Rename/remove minified files; at this stage, minified files will no longer rely on particular Code Editors' feature set to be generated. They are now generatable through gulp compile.
  • 472476e99aa571ea1c3f9407113da982575e84a6, 545b25cda3d5fe4a33ae5078912be62568a2f612, 6a53fa3b07bdc592e472b09b5b8b6591f01ad048 and e3fac478e8a5f099cd7023154a07e430a9bd57d0 Enable complete gulpjs support
    • npm i
    • npm run compile
    • npm run build - the build will be at /build directory
  • 6f61852561bb45893c80061c1dfcf593b80487e0 The repository url across the project has been changed to https://github.com/qr-merger/merger
  • c5332e11e40a4810d2b28c715c67ef085fe29bd4 A web-analytics script provided by Microsoft Clarity has been added to allow the project to track its usage; disable it by modifying the tracking variable in Config Section from true to false
  • 0f1fc4c353ae200b71ea54e03d263b36b520aa0c Relative paths are used in gulp build to resolve path issues when placed in a sub-directory
  • 63b69e29e450767b6c36c16a0b48a13ec6693270 jQuery has been added as a NPM package for vulnerability tracking

Sponsorship

  • 08a1c831253cbb08d77976517484a74d598deafc 42ed1712f9948d98490331c9a1354e1b8a9a7f57 This project has been sponsored by CloudFlare, correlating logo and link are placed at the README

What's Changed

Full Changelog: https://github.com/qr-merger/merger/compare/0.27.0...0.28.4

0.28.2-beta

10 months ago

Update 0.28.2-beta is a minor update featuring bug fixes on gulp build and introducing @jquery as a dependency for vulnerability tracking.

Additionally, cdnjs does not appear to have issues with recognition of a file like function.main.js, therefore, the workarounds are removed.

Full Changelog: https://github.com/qr-merger/merger/compare/0.28.1-beta...0.28.2-beta

0.28.1-beta

10 months ago

Update 0.28.1-beta is a transition version featuring polish to overall code quality, while the project awaits a pull request to be merged to enable cdnjs to fetch the bundled static files.

Meanwhile, efforts has been commited on rebuilding the documentation site to offer better interpretation of the use of this project.

News

  • 08a1c831253cbb08d77976517484a74d598deafc 42ed1712f9948d98490331c9a1354e1b8a9a7f57 This project has been sponsored by CloudFlare, correlating logo and link are placed at the README

Changes

User-Facing

  • [Breaking] 6f61852561bb45893c80061c1dfcf593b80487e0 249924a2fc3c5c5feda4f22afc39fefd9d4a38ea fe296a42a4f913571754252f39694bb9302ea554 Tenpay (QQ Wallet) support has been dropped due to limitations on QR Code scanning and recognising placed by QQ

Developer-Facing

  • 6f61852561bb45893c80061c1dfcf593b80487e0 The repository url across the project has been changed to https://github.com/qr-merger/merger
  • 4ec7f71d6dd57e086408098523a54c6b7dd864b5 Significant improvements has been made on code comments of the merger.html file, while the gravatar_url had been changed to sdn.geekzu.org due to the official source experiencing connection_reset issue regionally in China
    • gravatar.loli.net is removed due to a bug on its caching behavour, neglecting the ?s=xxx parameter
    • cravatar.cn was considered but appearenly it involves censorship mechanisms, while confidence is lacked from this project in regards to its long-term sustainability and fundamental philosophy
  • 249924a2fc3c5c5feda4f22afc39fefd9d4a38ea The logic in verifying whether profile is link or email has been improved to be nearer a good practice
  • d64d207d43d4fc58b6b1d0b88402c08ccaac2144 s1.pstatp.com has been dropped due to its lack of synchronisation; cdn.staticfile.org is now used, which still offers global CDNs
    • 006d0ccadc2ff33c4f5fdddfcc032ac7a87d226a jQuery has been updated to 3.7.0
  • d986ce3b74496ded39d3f35c224ecf5b9c655032 a1c7f047479367b626368c52deb4b3d69bf9c5ac preconnect headers has been correspondingly updated
  • c2b051903d5ed643b912ebff63895d823499f380 https://github.com/cdnjs/packages/pull/1566 Due to an issue with cdnjs' file matching logic configured for this project, an extra copy of function.main.js and style.main.css has been made under the bundles directory, temporaily enabling loading bundled files through cdnjs and its mirrors

Full Changelog: https://github.com/qr-merger/merger/compare/0.28.0-rc...0.28.1-beta

0.28.0-rc

1 year ago

See #35

0.28.0-beta

1 year ago

Releasing 0.28.0-beta for testing and early preview. The entire Update 28 is not completed.

For changes see #33.

0.27.1

2 years ago

Update: this version does not fully replace all jsDelivr links, a futher update is on its way

Changes

Upgrading to this version is advised as otherwise merger will not work. As all changes are minor and had been tested to work, this version will be released as stable immediately.

Full Changelog: https://github.com/qr-merger/merger/compare/0.27.0...0.27.1

0.27.0

2 years ago

Changes

General Changes

jsDelivr Changes

Developer-facing Changes

Prospects to the Future

  • This project is no doubt still under maintanence, but given my personal circumstances it may not be possible to actively update this project.
  • Some thoughts for the future direction of this project includes:

As this update is directly based on Update 26.2 (pre-release), and the modifications made are simple therefore unlikely to cause any new issues. This release will therefore marked as stable immediately.

Please may I advise any user of this project to Watch - Custom - Releases of this repository to receive updates in the future when a new release is available.

image

What's Changed

Full Changelog: https://github.com/qr-merger/merger/compare/0.26.2...0.27.0

0.26.2

2 years ago

This update contains a change in the gravatar source and minor code comments update.

This update should not be used in production as the new gravatar source contains unknown availibility and stability risks. Use it at your own risk and judgement.

#25

0.26.1

3 years ago

For previous changes and some extra notes, please refer to Update 26.

Changes

  • After some consideration and experiments, jQuery will now be loaded separately, as https://cdn.jsdelivr.net/npm/jquery@3, instead of using the combine jsDelivr link like before. This is because any 'version aliasing' links will only have the cache length of half an hour, however if versions are specified, the cache expires much later. Though the requests number is increased by one, I believe by making this change the general loading time will decrease slightly, as we now have very solid caches.
  • The version number across the whole project had also been updated; from 0.21.1 to 0.26.1.

Developer-facing Changes

  • @hifocus/merger at GitHub registry had been deprecated. qr-merger at official NPM registry will be back to work.
  • When switch to alternative asset links (service provided by Zhihu), you could notice subtle loading performance degradations. Please be advised to only do so in the event of jsDelivr goes down.

The 'pre-release' mark for this release will be removed once I can confirm everything works normally. [Update] - I can now confirm there shouldn't be any issues that would affect the usage of the project. Update 26.1 is now a stable release. Please do report any issues to us as always. Thank you for your continuous support.

0.26

3 years ago

General Changes

  • jQuery will now be loaded under the 'version-aliasing' format. This is because some previous jQuery v3 releases contained some vulnerabilities, and this change can avoid such problem by always loading the latest version within the version number 3.
  • Local js libraries are now removed, since they cannot self-update; their existence also increased the repository's size.
  • Merger is now a NPM package; this enabled not only static resources in the repository to be referred through services like UNPKG or jsDelivr, but also minifying the HTML file size through the command npm run build.
  • To respond to the removal of local js libraries, alternative resources can be introduced through unpkg.zhimg.com, a UNPKG mirror that is optimised both in China Mainland and the globe.

UX Improvements

  • Copywritings across all supported languages had been tweaked to improve UX.
  • The gravatar mirror (now called 'source' to avoid confusions) had been switched back to official source, as their performance in China Mainland now look quite satisfying.
  • The QR Code container that will appear after the relevant payment method button had been clicked is now larger, which can cover the profile photo and other buttons completely.

Developer-facing Changes

  • If you use a serverless service to host your merger site, you may now tell the service to run npm run build each time a build is triggered. The minified merger site will then be located in the ./public directory (please be sure to use a Linux-based image when selecting building environment).
  • Some code comments had been updated to keep consistency and clarity.

This is a stable release. If you do encountered any problems while using this version, please let us know in issues.