sciactive / pnotify

Beautiful JavaScript notifications with Web Notifications support.
https://sciactive.com/pnotify/
Apache License 2.0
3.65k stars 513 forks source link

PNotify 3.0.0 not available on jsDelivr #222

Closed NightOwl888 closed 6 years ago

NightOwl888 commented 8 years ago

For some reason, version 2.0.0 is the last version available at jsDelivr. Could you please post the remaining versions there?

jimaek commented 8 years ago

I enabled auto-updates for pnotify and 3.0.0 will be live soon

NightOwl888 commented 8 years ago

Thanks for the quick reply.

The files that got deployed to jsDelivr are all compressed ending in .js and .css rather than the conventional .min.js and .min.css extensions used at CDNJS. It's workable, but a little confusing that they are different between CDNs (as well as having differences from package managers). I would expect these files to be uncompressed.

Not to mention, the URLs with the standard .min.js convention result in "file not found".

http://cdn.jsdelivr.net/pnotify/3.0.0/pnotify.min.js

jimaek commented 8 years ago

I used the official source https://github.com/sciactive/pnotify/tree/3.0.0/dist

NightOwl888 commented 8 years ago

OK, but it still has issues. Not sure if you think they are important enough to address, but here they are.

  1. Compressed files have .js extension instead of .min.js.
  2. No default file set up because you had the default as pnotify.all.min.js, and that file no longer exists in 3.0.0. See the example below.
  3. No combined module file (see issue 2). You have to combine the modules manually.
  4. IIFE is being deployed to the CDN. It is taking up extra bytes in the download without providing any real benefit there.

Because there is not a default file, the following URL is required

instead of simply

(note this URL doesn't work but http://cdn.jsdelivr.net/g/jquery@1.11.3,pnotify@2.0.0 does).

I won't be too disappointed if these issues don't get fixed, but I would like to know if you intend to since our library depends on this one and I need to update the documentation accordingly on how to add references to PNotify.

jimaek commented 8 years ago

Only the owner of pnotify can address your filename concerns.

I fixed http://cdn.jsdelivr.net/g/jquery@1.11.3,pnotify@3.0.0 http://cdn.jsdelivr.net/g/jquery@1.11.3,pnotify@2.0.0

jimaek commented 7 years ago

The new backend is live. It pulls files directly from npm and github https://github.com/jsdelivr/jsdelivr#usage

Example https://cdn.jsdelivr.net/npm/jquery@3.1.1 Example directory listing https://cdn.jsdelivr.net/npm/jquery@3.1.1/

hperrin commented 7 years ago

As for IIFE, version 4 of PNotify will be using ES6 classes and modules, and you will be able to compile it to whatever type of module you need. Do you have a suggestion on how I should put it on different CDNs? Should I include all the common module types? I can add an option to the build script to use ".min.*" filenames when compiling.

MartinKolarik commented 7 years ago

@hperrin right now we only support minification. If you use ES2015+/TypeScript/... all files need to be compiled on your end. Your package should provide an UMD build that works in all browsers. Another option is having multiple build files and telling jsDelivr which one should be used in the browser: https://github.com/jsdelivr/jsdelivr#configuring-a-default-file-in-packagejson

hperrin commented 6 years ago

UMD, IIFE, and ES6 modules will be provided in PNotify v4, compressed and uncompressed.

hperrin commented 6 years ago

Up on jsDelivr in UMD, IIFE, and ES6.

pjv83 commented 3 years ago

This is still a problem on the CDNs (cdnjs, jsdelivr, unpkg, etc.) for most of the versions, but especially for 5+. Is there another packaging source that's recommended or is there a plan to get these issues resolved? I'd be happy to help if that's a possibility. https://www.jsdelivr.com/package/npm/pnotify

hperrin commented 3 years ago

JSDelivr for v5 has moved to a new package.

You can now load PNotify with the following package: https://www.jsdelivr.com/package/npm/@pnotify/core

There are also packages for each of the modules: https://www.jsdelivr.com/package/npm/@pnotify/animate https://www.jsdelivr.com/package/npm/@pnotify/bootstrap3 https://www.jsdelivr.com/package/npm/@pnotify/bootstrap4 https://www.jsdelivr.com/package/npm/@pnotify/confirm https://www.jsdelivr.com/package/npm/@pnotify/countdown https://www.jsdelivr.com/package/npm/@pnotify/desktop https://www.jsdelivr.com/package/npm/@pnotify/font-awesome4 https://www.jsdelivr.com/package/npm/@pnotify/font-awesome5 https://www.jsdelivr.com/package/npm/@pnotify/font-awesome5-fix https://www.jsdelivr.com/package/npm/@pnotify/glyphicon https://www.jsdelivr.com/package/npm/@pnotify/mobile https://www.jsdelivr.com/package/npm/@pnotify/paginate