Releases: qr-merger/merger
Update 0.28.6: Deprecation of cdnjs.com Mirrors & Gulp Workflow Changes
Changes
- A recent observation is that most if not all cdnjs.com mirrors in China are out-of-sync (
staticfile.net
,css.loli.net
,cdn.bytedance.com
) or otherwise inaccessible (cdn.baomitu.com
). Therefore, with this update we are opting for fully localised library loading, including jQuery and jquery-qrcode. The one-file usage is still supported, in whichcdnjs.com
is directly used to include static libraries.- Regarding the use of Public CDNs,
fastly.jsdelivr.net
andcdnjs.cloudflare.com
were both amongst the considerations made. We chose the latter because of its relative accessibility in China, lower packet-loss rate at evening 'peak' times despite relatively higher latency.
- Regarding the use of Public CDNs,
- Updated the gulp workflow to include jQuery and jquery-qrcode in addition to some behaviour changes.
- Minor changes in
merger.html
regarding behaviour, logic and code comments. - Updated README.md.
Overall, all this update does is:
- When used with npm, gulp will include all libraries in one file, eliminating reliance on external mirrors
- When used as a standalone html, libraries are served through
cdnjs.com
.
This release will remain as pre-release, pending further observation.
Full Changelog: 0.28.4...0.28.6
Update 0.28.4: Optimisation-Focused
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
and0.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!)
- This project used to rely on jsDelivr on loading static assets. After jsDelivr lost its ICP license and was momentarily censored in China, we deem it unviable to act as our js cdn.
- The obvious solution would be reverting to load assets from local
However, thanks to the community's support and approval to this project in the past years, as of0.28.0-rc
(#35), merger is now on cdnjs as a library: https://cdnjs.com/libraries/merger. - Which means loading assets from China-optimised CDNs is now back as a practicality:
🥤 Gulp Support Enables Custom-Built Assets and Minification
- As a part of
0.28.0-rc
(#35), we have addedgulp
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 thenpm run build
command, a compressed merger site will be exported to the/build
directory, preserving all of your customisations made to the code.
- The addition of
🚫 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
- This means the
Changes
Breaking
- 6f61852 249924a fe296a4 Tenpay (QQ Wallet) support has been dropped due to limitations on QR Code scanning and recognising placed by QQ
Optimisations
- a96fe30 Changed font families under different langauges for better experiences on some devices.
- 1b43f96 The loading of the avatar has been prioritised. This is accommplished by putting the relevant JavaScript code before loading external JavaScripts.
- 9a6d5bf Avatars are now loading avaptively in respect to the device screen size, rounded to the nearest 50px, ranging from 200-500 px.
- 9b797e7 Update DNS Preconnect header for better speed.
- 4f8f0f0 Slightly improved performance achieved by moving the MD5 function around.
- 0f5dfaa After some considerations, the placeholder avatar, considering it's rare practicality, will be loaded remotely on-demand, reversing 088a72c
- 4ec7f71 The
gravatar_url
has been changed tosdn.geekzu.org
due to the official source experiencing connection_reset issue regionally in Chinagravatar.loli.net
is removed due to a bug on its caching behavour, neglecting the?s=xxx
parametercravatar.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
- 249924a The logic in verifying whether
profile
is link or email has been improved to be nearer a good practice - d64d207
s1.pstatp.com
has been dropped due to its lack of synchronisation;cdn.staticfile.org
is now being used, which still offers global CDNs- 006d0cc jQuery has been updated to
3.7.0
- 006d0cc jQuery has been updated to
- d986ce3 a1c7f04
preconnect
headers has been correspondingly updated
Developer Experience
- 2ece0f3 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
. - 472476e, 545b25c, 6a53fa3 and e3fac47 Enable complete gulpjs support
npm i
npm run compile
npm run build
- the build will be at/build
directory
- 6f61852 The repository url across the project has been changed to https://github.com/qr-merger/merger
- c5332e1 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 inConfig Section
fromtrue
to false - 0f1fc4c Relative paths are used in
gulp build
to resolve path issues when placed in a sub-directory - 63b69e2 jQuery has been added as a NPM package for vulnerability tracking
Sponsorship
- 08a1c83 42ed171 This project has been sponsored by CloudFlare, correlating logo and link are placed at the README
What's Changed
- Update 28 Part 1: Functionality Update by @hifocus in #33
- Update 28 Part 2: Dev Features by @hifocus in #35
- Bump gulp-html-minifier-terser from 7.0.0-beta.0 to 7.1.0 by @dependabot in #38
Full Changelog: 0.27.0...0.28.4
Update 0.28.2-beta
Update
0.28.2-beta
is a minor update featuring bug fixes ongulp 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: 0.28.1-beta...0.28.2-beta
Update 0.28.1-beta: Polish and cdnjs adaptation
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
- 08a1c83 42ed171 This project has been sponsored by CloudFlare, correlating logo and link are placed at the README
Changes
User-Facing
- [Breaking] 6f61852 249924a fe296a4 Tenpay (QQ Wallet) support has been dropped due to limitations on QR Code scanning and recognising placed by QQ
Developer-Facing
- 6f61852 The repository url across the project has been changed to https://github.com/qr-merger/merger
- 4ec7f71 Significant improvements has been made on code comments of the merger.html file, while the
gravatar_url
had been changed tosdn.geekzu.org
due to the official source experiencing connection_reset issue regionally in Chinagravatar.loli.net
is removed due to a bug on its caching behavour, neglecting the?s=xxx
parametercravatar.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
- 249924a The logic in verifying whether
profile
is link or email has been improved to be nearer a good practice - d64d207
s1.pstatp.com
has been dropped due to its lack of synchronisation;cdn.staticfile.org
is now used, which still offers global CDNs- 006d0cc jQuery has been updated to
3.7.0
- 006d0cc jQuery has been updated to
- d986ce3 a1c7f04
preconnect
headers has been correspondingly updated - c2b0519 cdnjs/packages#1566 Due to an issue with cdnjs' file matching logic configured for this project, an extra copy of
function.main.js
andstyle.main.css
has been made under thebundles
directory, temporaily enabling loading bundled files through cdnjs and its mirrors
Full Changelog: 0.28.0-rc...0.28.1-beta
Update 28 Part 2: Dev Features | RC
See #35
Update 0.28.0-beta: Functionality Improvements
Releasing 0.28.0-beta for testing and early preview. The entire Update 28 is not completed.
For changes see #33.
Update 27.1 jsDelivr Deprecation and Gravatar Fix
Update: this version does not fully replace all jsDelivr links, a futher update is on its way
Changes
- Replace jsDelivr assets to local jsdelivr/jsdelivr#18392
- Replace Gravatar mirror to official source amid service status issues
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: 0.27.0...0.27.1
Update 27 # Address jsDelivr ICP Revokement & Minor Improvements
Changes
General Changes
- Please read from the bottom of this release note for more info.
- Amid jsDelivr degradation, two new Gravatar sources has been added (provided respectively by css.loli.net and the official source) to increase developer's options. 410a0d2
- Several
preconnect
Link types has been added to the header of the merger.html, to help resolving and establishing the secure connection to external domains. 410a0d2, 4cfd8c0
jsDelivr Changes
- jsDelivr has lost its ICP license yesterday, jsdelivr/jsdelivr#18348 (comment)
- This update altered all jsDelivr links for external libraries - jQuery and jquery-qrcode to the CDN service
cdn.baomitu.com
. This new CDN source has optimal global access speed; however it's not as versatile as jsDelivr, so part of the jsDelivr links - self-written libraries, remain on jsDelivr. db39b89
Developer-facing Changes
- From this update all future numbers will be formatted as like
0.0.0
892ddd1 - The previous version number
0.27
has been withdrawn.
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:
- More extensive Alipay support. #4 (comment)
- Better code quality. Smaller code scale.
- More accessible and directive copywritings.
- Tech-stack update.
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.
What's Changed
Full Changelog: 0.26.2...0.27.0
Update 26.2 # Gravatar Update (Testing Only)
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.
Update 26.1 # Separated jQuery Loading and NPM-Package-wise Changes
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
to0.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.