Coder Social home page Coder Social logo

ppm's Issues

Remove usage of `pulsar-edit.com` EVERYWHERE

Have you checked for existing feature requests?

  • Completed

Summary

On June 29th ownership of the .com extension to pulsar-edit will lapse and be given back to the domain registrar, we need to ensure this is not being used anywhere within the project, but most importantly ppm as this executes the actual installation of packages to users machines.

It's usage must be changed to .dev instead, following our new subdomains

What benefits does this feature provide?

Security and Stability

Any alternatives?

NO

Other examples:

No response

Add more package templates

Have you checked for existing feature requests?

  • Completed

Summary

As discussed in pulsar#216 it would be nice to add more templates for packages.

  • typescript

If you have more suggestion just comment here and I will add them to the list.

Enter your response below:

It would support people to create packages in the enviroment/language they like.

Any alternatives?

Other examples:

No response

Dependency Dashboard

This issue lists Renovate updates and detected dependencies. Read the Dependency Dashboard docs to learn more.

Warning

These dependencies are deprecated:

Datasource Name Replacement PR?
npm coffee-script Unavailable
npm request Unavailable
npm superagent Unavailable
npm wrench Unavailable

Pending Approval

These branches will be created by Renovate only once you click their checkbox below.

  • fix(deps): update dependency async to v3.2.5
  • chore(deps): update actions/checkout action to v3.6.0
  • chore(deps): update actions/setup-node action to v3.8.2
  • fix(deps): update dependency open to v7.4.2
  • fix(deps): update dependency semver to v7.6.3
  • chore(deps): update actions/checkout action to v4
  • chore(deps): update actions/setup-node action to v4
  • chore(deps): update actions/setup-python action to v5
  • chore(deps): update dependency got to v14
  • chore(deps): update dependency tar to v7
  • fix(deps): update dependency hosted-git-info to v7
  • fix(deps): update dependency open to v10
  • fix(deps): update dependency read to v3
  • fix(deps): update dependency superagent to v10
  • fix(deps): update dependency yargs to v17
  • 🔐 Create all pending approval PRs at once 🔐

Detected dependencies

github-actions
.github/workflows/CI.yml
  • actions/checkout v3.3.0
  • actions/setup-node v3.6.0
  • actions/setup-python v4
  • actions/setup-python v4
npm
package.json
  • asar-require 0.3.0
  • async ^3.2.0
  • colors ~1.4.0
  • fs-plus 3.x
  • git-utils ^5.7.2
  • hosted-git-info ^3.0.7
  • keytar ^7.7.0
  • mv 2.1.1
  • ncp ~2.0.0
  • open 7.3.0
  • plist 3
  • read ~1.0.7
  • request ^2.88.2
  • season ^6.0.2
  • second-mate 9686771
  • semver ^7.3.4
  • superagent ^8.0.9
  • superagent-proxy ^3.0.0
  • tar ^6.0.5
  • temp ^0.9.4
  • underscore-plus 1.x
  • wordwrap 1.0.0
  • wrench ~1.5.1
  • yargs ^3.32.0
  • coffee-script ^1.12.7
  • express ^4.17.1
  • jasmine-focused >=1.0.7 <2.0
  • shx ^0.3.3
  • ip ^1.1.9
  • got ^11.8.6
  • http-cache-semantics ^4.1.1
  • tar ^6.1.2

  • Check this box to trigger a request for Renovate to run again on this repository

can't install scoped packages properly

Thanks in advance for your bug report!

  • Have you reproduced issue in safe mode?
  • Have you used the debugging guide to try to resolve the issue?
  • Have you checked our FAQs to make sure your question isn't answered there?
  • Does your issue already exist?
  • Have you checked you are on the latest release of Pulsar?

What happened?

It is not properly possible to install a scoped package. The first part of the name is interpreted as package name. eg. @sertonix if the package is called @sertonix/test
When you try to uninstall the package it gives an error because the package.json is not in the expected path.

What steps are needed to reproduce this?

  1. create local package
  2. set the name to a scoped one. eg. @sertonix/test
  3. install package with apm link <path>
  4. check settings
  5. the package will have the name of the scope. eg. @sertonix

Additional Information:

the / is interpreted as a sub folder. To prevent this an escape sequence is required that does not contain / or \\. Maybe use encodeURIComponent for that.

Support the `prepublishOnly` hook

Have you checked for existing feature requests?

  • Completed

Summary

I wrote a TypeScript package as a way of dogfooding the IDE experience with my pulsar-ide-typescript-alpha package. By and large it's a smooth process, but the hardest part has been automatically transpiling to JavaScript before publish.

My understanding is that most NPM packages that are written in TypeScript use the prepublishOnly script hook for this task. prepublishOnly is called after the user runs npm publish, but before anything else happens.

Inspecting the artifacts of other high-profile Atom packages that were written in TypeScript implies that this might’ve worked for ppm at some point in the past, but I can’t imagine how that would be true.

My goal for my own project is (a) never to have to care about built files until publish time, and (b) never to run the risk of forgetting to transpile (and commit the transpilation) before publishing.

This is not a major priority, but I think it’s worth visiting at some point.

What benefits does this feature provide?

Feature parity with npm. Makes it much easier to do something that might be a common need for new package contributors.

Any alternatives?

I can't think of a good alternative to this. In my case, I've managed to build a system out of duct tape and twine that forces me to build code before I run ppm publish patch, but that's not a proper solution.

Other examples:

No response

ppm installs the wrong package

Thanks in advance for your bug report!

  • Have you reproduced issue in safe mode?
  • Have you used the debugging guide to try to resolve the issue?
  • Have you checked our FAQs to make sure your question isn't answered there?
  • Have you checked to make sure your issue does not already exist?
  • Have you checked you are on the latest release of Pulsar?

What happened?

I've just updated my atom package autocomplete-tailwindcss for pulsar. During this, I've renamed it to autocomplete-tailwindcss. As you might guess, it's an autocompletion provider for Tailwind CSS class names.

The code is several years old and was initially written by Vincent Klaiber. They published the package under the name autocomplete-tailwind. Note the missing 'css' and the end. That repository is no longer accessible at GitHub and results in a 404 error.

After I've published the package with ppm publish, it got registered at https://web.pulsar-edit.dev/packages/autocomplete-tailwindcss.

However, I cannot install the package -- instead, the abandoned package from Vincent Klaiber gets installed. This is rather surprising. Especially, because the package does not even exist at https://web.pulsar-edit.dev/.

Pulsar version

1.113.0

Which OS does this happen on?

🐧 Debian based (Linux Mint, Ubuntu, etc.)

OS details

Debian GNU/Linux trixie/sid

Which CPU architecture are you running this on?

x86_64/AMD64

What steps are needed to reproduce this?

$ ppm install autocomplete-tailwindcss
Installing autocomplete-tailwindcss to /home/toddy/.pulsar/packages ✓
$ ls ~/.pulsar/packages 
autocomplete-tailwind

Additional Information:

No response

Can't unpublish a package

Thanks in advance for your bug report!

  • Have you reproduced issue in safe mode?
  • Have you used the debugging guide to try to resolve the issue?
  • Have you checked our FAQs to make sure your question isn't answered there?
  • Have you checked to make sure your issue does not already exist?
  • Have you checked you are on the latest release of Pulsar?

What happened?

Hello. I've been working in a fork from a old package that it's no longer working. And now I decided to publish since it's stable I named the package auto-prettier-eslint.
But I've made some mistakes in the publishing and I can't neither publish a new version or unpublish it. All I get is Internal Server Error.)

Pulsar version

1.112.1

Which OS does this happen on?

🐧 Debian based (Linux Mint, Ubuntu, etc.)

OS details

Ubuntu

Which CPU architecture are you running this on?

x86_64/AMD64

What steps are needed to reproduce this?

Here is more or less what I've done:

  1. Publish the package from gitLab and change the name. (that is not possible)
  2. Import it to github. (I think I got it published here)
  3. Tried to update the read me and json. (can't do it no error description

Additional Information:

No response

`ppm upgrade` doesn't work for git-installed packages without a `master` branch

Thanks in advance for your bug report!

  • Have you reproduced issue in safe mode?
  • Have you used the debugging guide to try to resolve the issue?
  • Have you checked our FAQs to make sure your question isn't answered there?
  • Have you checked to make sure your issue does not already exist?
  • Have you checked you are on the latest release of Pulsar?

What happened?

I was wondering why some of my git-installed packages were able to be upgraded — both within the editor and via ppm upgrade — and some were not. I managed to track down what I think is the answer: ppm upgrade checks a hard-coded refs/heads/master, and many newer repos use main as the default branch.

GitHub changed the default on new repos back in 2020, but never updated apm accordingly.

I suppose the simplest fix would be to do repo.getUpstreamBranch('refs/heads/main') || repo.getUpstreamBranch('refs/heads/master'), so that’s probably what I’ll do unless someone has a better suggestion.

Pulsar version

1.101.0-beta

Which OS does this happen on?

🍎 macOS

OS details

11.7.3

Which CPU architecture are you running this on?

64-bit(x86_64)

What steps are needed to reproduce this?

I don't expect anyone to do this, but here we go:

  1. Create a GitHub repo with main as its default branch. Put a skeleton package in it — perhaps a sample package from the Flight Manual.
  2. Install it with ppm install [github username]/[repo name].
  3. Land a trivial update to the package on main.
  4. Attempt to upgrade it with ppm upgrade [repo name]; nothing will happen.

Additional Information:

No response

Creating new version failed: Application Error

Thanks in advance for your bug report!

  • Have you reproduced issue in safe mode?
  • Have you used the debugging guide to try to resolve the issue?
  • Have you checked our FAQs to make sure your question isn't answered there?
  • Have you checked to make sure your issue does not already exist?
  • Have you checked you are on the latest release of Pulsar?

What happened?

Hi, I have often encountered an error when trying to publish a package `Creating new version failed: Application error'. My observation I often encounter this error while trying to publish a few packages in a row.

On the same hand, I have first tried to now produce too many new tags, but to overwrite them. It looks like `--allow-same-version' doesn't work.

Pulsar version

1.111.0

Which OS does this happen on?

🪟 Windows

OS details

win 10 x64

Which CPU architecture are you running this on?

x86_64/AMD64

What steps are needed to reproduce this?

try to publish a package

Additional Information:

image

log file:

0 info it worked if it ends with ok
1 verbose cli [
1 verbose cli   'c:\\ProgramData\\Pulsar\\resources\\app\\ppm\\bin\\node.exe',
1 verbose cli   'c:\\ProgramData\\Pulsar\\resources\\app\\ppm\\node_modules\\npm\\bin\\npm-cli.js',
1 verbose cli   'version',
1 verbose cli   '1.1.0',
1 verbose cli   '-m',
1 verbose cli   'Prepare v%s release'
1 verbose cli ]
2 info using [email protected]
3 info using [email protected]
4 verbose stack Error: Version not changed, might want --allow-same-version
4 verbose stack     at persistVersion (c:\ProgramData\Pulsar\resources\app\ppm\node_modules\npm\lib\version.js:98:16)
4 verbose stack     at c:\ProgramData\Pulsar\resources\app\ppm\node_modules\npm\lib\version.js:52:7
4 verbose stack     at c:\ProgramData\Pulsar\resources\app\ppm\node_modules\npm\lib\version.js:129:5
4 verbose stack     at c:\ProgramData\Pulsar\resources\app\ppm\node_modules\npm\node_modules\graceful-fs\graceful-fs.js:123:16
4 verbose stack     at FSReqCallback.readFileAfterClose [as oncomplete] (node:internal/fs/read_file_context:68:3)
5 verbose cwd C:\Data\Develop\Pulsar\open-external
6 verbose Windows_NT 10.0.19045
7 verbose argv "c:\\ProgramData\\Pulsar\\resources\\app\\ppm\\bin\\node.exe" "c:\\ProgramData\\Pulsar\\resources\\app\\ppm\\node_modules\\npm\\bin\\npm-cli.js" "version" "1.1.0" "-m" "Prepare v%s release"
8 verbose node v16.0.0
9 verbose npm  v6.14.19-pulsar1-1
10 error Version not changed, might want --allow-same-version
11 verbose exit [ 1, true ]

install from partial github repository

Have you checked for existing feature requests?

  • Completed

Summary

It would be nice to be able to install packages from git that are not in the root of the repo. For example like the packages in the core repo.
I found some instructions on how to do that here.
Example for the settings-view package:

git clone --depth 1 --filter=blob:none --sparse https://github.com/pulsar-edit/pulsar
cd pulsar
git sparse-checkout set packages/settings-view
cd packages/settings-view

Enter your response below:

It would allow the installation of packages that have been moved into the core repo directly from git.

Any alternatives?

Do the installation manually. It would be possible but for example updating would not work.

Other examples:

No response

Add ability for PPM to run `electron-rebuild` automatically

Have you checked for existing feature requests?

  • Completed

Summary

Atom occasionally needed to rebuild the dependencies of community packages. For one thing, some NPM packages don't have prebuilds for some platforms. And when Atom upgraded its own version of Electron, that would require a rebuild of the native modules of previously installed community packages so that they could work with the new Electron version.

It seems that this used to be possible simply by running ppm rebuild [package]. That command delegates to npm rebuild (using ppm's internal copy of npm, of course). And Pulsar's builtin incompatible-packages package offers a GUI for performing this task — which internally just shells out to ppm rebuild.

Nowadays, however, this doesn't seem to be enough; these tasks claim to work, but don't produce modules capable of working in Pulsar. One possible fix for this problem would be to rewrite PPM's rebuild task to delegate to electron-rebuild.

This will require two things:

  1. We need a way to find the correct version of Electron for the currently installed Pulsar instance. We could just shell out to pulsar the way that the test tasks seems to do, taking care to ensure we're finding the version of the command that pairs with the version of ppm that's currently running. (In other words, don't just run pulsar and rely on PATH to find it.)
  2. We need electron-rebuild to be a dependency of ppm. Currently it's only a dev dependency of Pulsar itself, while PPR doesn't require or use it at all.

I'm inclined to assume control of the existing rebuild task here because I don't think that it does anything that electron-rebuild won't be able to do, but I'm happy to discuss that if anyone is concerned about it.

The short-term goal isn't to do anything magical or fancy with this — just to make it so that ppm rebuild [package] actually does what it says on the tin, instead of being seemingly useless. If this works, we can have a discussion about whether this should be a mandatory post-install task for a given package. If electron-rebuild understands when it does not need to rebuild a module, then I don't see a downside to doing this, but we don't need to decide it now.

(Reminder to myself or someone else: before working on this, I know I need to understand the installation process better, and exactly what happens when ppm installs a package that uses native modules. For instance, I've never need to run electron-rebuild on any package that uses @savetheclocktower/atom-languageclient, even though it has a dependency with a native module. Why is my experience different from that of @mjrodgers (as reported in Discord)? He's on ARM64 and I'm on Intel, but surely a native module would need a rebuild anyway for an Electron environment, right? I should try to run (e.g.) ppm install --verbose pulsar-ide-typescript-alpha in a clean environment and pore over the output to see if I can answer these questions.)

What benefits does this feature provide?

Easier package installations.

Any alternatives?

@mauricioszabo wants a fix that doesn't depend on PPM, but that can be pursued in parallel.

Other examples:

No response

Don't Reinstall Installed Packages (when installing from package-file)

Have you checked for existing feature requests?

  • Completed

Summary

The Problem

When installing a list of packages from a file using the command ppm install --packages-file ./MyPackages.txt, and for some reason the installation of a single package in this list fails (e.g. broken internet connection), re-running the command results in all packages, even those that have already been successfully installed, being rebuilt and reinstalled.

The Solution

When ppm installs packages from a file, it should only install those packages which aren't yet installed, skipping those packages that are already installed.

This behaviour could be optional, e.g. activated by a CLI argument such as --dont-reinstall

What benefits does this feature provide?

This feature would greatly improve the resiliency of PPM when installing multiple packages at once, as it would allow an interrupted installation process to continue where it left off instead of started all over again.

Any alternatives?

I don't see any similarly efficient or effective solutions to the described problem.

Other examples:

No response

Package install issue on linux( MX linux )

Thanks in advance for your bug report!

  • Have you reproduced issue in safe mode?
  • Have you used the debugging guide to try to resolve the issue?
  • Have you checked our FAQs to make sure your question isn't answered there?
  • Have you checked to make sure your issue does not already exist?
  • Have you checked you are on the latest release of Pulsar?

What happened?

Packages don't install after install a few basic packages

Pulsar version

1.116

Which OS does this happen on?

🐧 Debian based (Linux Mint, Ubuntu, etc.)

OS details

Mx Linux 23.2

Which CPU architecture are you running this on?

x86_64/AMD64

What steps are needed to reproduce this?

  1. Install a package ex: atom-ide-hyperclick
  2. Get the error of cb() is never called

Additional Information:

The log:

0 info it worked if it ends with ok
1 verbose cli [
1 verbose cli '/opt/Pulsar/resources/app/ppm/bin/node',
1 verbose cli '/opt/Pulsar/resources/app/ppm/node_modules/npm/bin/npm-cli.js',
1 verbose cli '--globalconfig',
1 verbose cli '/home/Ayush/.pulsar/.apm/.apmrc',
1 verbose cli '--userconfig',
1 verbose cli '/home/Ayush/.pulsar/.apmrc',
1 verbose cli 'install',
1 verbose cli 'https://api.pulsar-edit.dev/api/packages/atom-ide-hyperclick/versions/1.0.11/tarball',
1 verbose cli '--target=12.2.3',
1 verbose cli '--disturl=https://artifacts.electronjs.org/headers/dist',
1 verbose cli '--arch=x64',
1 verbose cli '--force-process-config',
1 verbose cli '--global-style',
1 verbose cli '--production'
1 verbose cli ]
2 info using [email protected]
3 info using [email protected]
4 verbose npm-session c9b901d4ddacc70d
5 silly install loadCurrentTree
6 silly install readLocalPackageData
7 http fetch GET 200 https://codeload.github.com/atom-community/atom-ide-hyperclick/legacy.tar.gz/refs/tags/v1.0.11 2938ms
8 silly pacote remote manifest for undefined@https://api.pulsar-edit.dev/api/packages/atom-ide-hyperclick/versions/1.0.11/tarball fetched in 2971ms
9 timing stage:loadCurrentTree Completed in 3014ms
10 silly install loadIdealTree
11 silly install cloneCurrentTreeToIdealTree
12 timing stage:loadIdealTree:cloneCurrentTree Completed in 0ms
13 silly install loadShrinkwrap
14 timing stage:loadIdealTree:loadShrinkwrap Completed in 1ms
15 silly install loadAllDepsIntoIdealTree
16 silly resolveWithNewModule [email protected] checking installable status
17 http fetch GET 200 https://registry.npmjs.org/atom-ide-base 124ms (from cache)
18 http fetch GET 200 https://registry.npmjs.org/rxjs 131ms (from cache)
19 http fetch GET 200 https://registry.npmjs.org/react 169ms (from cache)
20 silly pacote range manifest for atom-ide-base@^3.0.0 fetched in 323ms
21 silly resolveWithNewModule [email protected] checking installable status
22 http fetch GET 200 https://registry.npmjs.org/react-dom 353ms (from cache)
23 silly pacote range manifest for react@^17.0.2 fetched in 497ms
24 silly resolveWithNewModule [email protected] checking installable status
25 silly pacote range manifest for react-dom@^17.0.2 fetched in 500ms
26 silly resolveWithNewModule [email protected] checking installable status
27 http fetch GET 200 https://registry.npmjs.org/prop-types 778ms
28 http fetch GET 200 https://registry.npmjs.org/prop-types/-/prop-types-15.8.1.tgz 232ms
29 silly pacote range manifest for prop-types@^15.7.2 fetched in 1081ms
30 silly resolveWithNewModule [email protected] checking installable status
31 timing npm Completed in 4915ms
32 error cb() never called!
33 error This is an error with npm itself. Please report this error at:
34 error https://npm.community

Cannot install extensions in Cuba

Thanks in advance for your bug report!

  • Have you reproduced this issue in incognito/private browsing? I don't know how to do it
  • Have you made sure you issue doesn't already exist?

Where is the URL that this occurs?

I don't know. I'm trying to install pulsar packages with its install procedure

What's your issue?

Trying to install an extension, I got this result:

0 info it worked if it ends with ok
1 verbose cli [
1 verbose cli   '/opt/Pulsar/resources/app/ppm/bin/node',
1 verbose cli   '/opt/Pulsar/resources/app/ppm/node_modules/npm/bin/npm-cli.js',
1 verbose cli   '--globalconfig',
1 verbose cli   '/home/paolo/.pulsar/.apm/.apmrc',
1 verbose cli   '--userconfig',
1 verbose cli   '/home/paolo/.pulsar/.apmrc',
1 verbose cli   'install',
1 verbose cli   'https://api.pulsar-edit.dev/api/packages/symbols-tree-view/versions/0.14.0/tarball',
1 verbose cli   '--target=12.2.3',
1 verbose cli   '--disturl=https://artifacts.electronjs.org/headers/dist',
1 verbose cli   '--arch=x64',
1 verbose cli   '--force-process-config',
1 verbose cli   '--global-style'
1 verbose cli ]
2 info using [email protected]
3 info using [email protected]
4 verbose npm-session e07fbfd776ab1f49
5 silly install loadCurrentTree
6 silly install readLocalPackageData
7 http fetch GET 304 https://codeload.github.com/xndcn/symbols-tree-view/legacy.tar.gz/refs/tags/v0.14.0 2232ms (from cache)
8 silly pacote remote manifest for undefined@https://api.pulsar-edit.dev/api/packages/symbols-tree-view/versions/0.14.0/tarball fetched in 2243ms
9 timing stage:loadCurrentTree Completed in 2258ms
10 silly install loadIdealTree
11 silly install cloneCurrentTreeToIdealTree
12 timing stage:loadIdealTree:cloneCurrentTree Completed in 0ms
13 silly install loadShrinkwrap
14 timing stage:loadIdealTree:loadShrinkwrap Completed in 1ms
15 silly install loadAllDepsIntoIdealTree
16 silly resolveWithNewModule [email protected] checking installable status
17 silly fetchPackageMetaData error for event-kit@latest request to https://registry.npmjs.org/event-kit failed, reason: read ECONNRESET
18 silly fetchPackageMetaData error for atom-space-pen-views@^2.0.0 request to https://registry.npmjs.org/atom-space-pen-views failed, reason: read ECONNRESET
19 silly fetchPackageMetaData error for q@~1.0.1 request to https://registry.npmjs.org/q failed, reason: read ECONNRESET
20 timing stage:rollbackFailedOptional Completed in 1ms
21 timing stage:runTopLevelLifecycles Completed in 73784ms
22 silly saveTree apm-install-dir-2024326-164637-1naek43.ge59
22 silly saveTree └── [email protected]
23 verbose type system
24 verbose stack FetchError: request to https://registry.npmjs.org/event-kit failed, reason: read ECONNRESET
24 verbose stack     at ClientRequest.<anonymous> (/opt/Pulsar/resources/app/ppm/node_modules/npm/node_modules/node-fetch-npm/src/index.js:68:14)
24 verbose stack     at ClientRequest.emit (node:events:365:28)
24 verbose stack     at TLSSocket.socketErrorListener (node:_http_client:447:9)
24 verbose stack     at TLSSocket.emit (node:events:365:28)
24 verbose stack     at emitErrorNT (node:internal/streams/destroy:193:8)
24 verbose stack     at emitErrorCloseNT (node:internal/streams/destroy:158:3)
24 verbose stack     at processTicksAndRejections (node:internal/process/task_queues:83:21)
25 verbose cwd /tmp/apm-install-dir-2024326-164637-1naek43.ge59
26 verbose Linux 6.8.0-31-generic
27 verbose argv "/opt/Pulsar/resources/app/ppm/bin/node" "/opt/Pulsar/resources/app/ppm/node_modules/npm/bin/npm-cli.js" "--globalconfig" "/home/paolo/.pulsar/.apm/.apmrc" "--userconfig" "/home/paolo/.pulsar/.apmrc" "install" "https://api.pulsar-edit.dev/api/packages/symbols-tree-view/versions/0.14.0/tarball" "--target=12.2.3" "--disturl=https://artifacts.electronjs.org/headers/dist" "--arch=x64" "--force-process-config" "--global-style"
28 verbose node v16.0.0
29 verbose npm  v6.14.19-pulsar1-1
30 error code ECONNRESET
31 error errno ECONNRESET
32 error network request to https://registry.npmjs.org/event-kit failed, reason: read ECONNRESET
33 error network This is a problem related to network connectivity.
33 error network In most cases you are behind a proxy or have bad network settings.
33 error network
33 error network If you are behind a proxy, please make sure that the
33 error network 'proxy' config is set properly.  See: 'npm help config'
34 verbose exit [ 1, true ]

Pulsar 1.111.0

Which OS/Browser/Version does this happen on?

🐧 Debian based (Linux Mint, Ubuntu, etc.)

xubuntu 24.04; same behaviour in 22.04

Which CPU architecture are you running this on?

x86_64/AMD64

What steps are needed to reproduce this?

In Pulsar:

  • Edit - preferences -> install
  • type any hint, and push the install button of any uninstalled package

Install doesn't happen, and after about a minute I get the error notification

Additional Information:

I suspect that it's because I'm in Cuba, and many web sites doesn't permit connection from this country.

Unfortunatly I'm not able to run pulsar behind a vpn.

Fork github.com/AtomLinter to pulsar-edit org

Have you checked for existing feature requests?

  • Completed

Summary

Please fork all of AtomLinter to pulsar-edit organisation to ensure the Pulsar Package Manager will able to distribute the linters in case that Github org is completely shut down.

What benefits does this feature provide?

All the repositories in https://github.com/AtomLinter seem to have been archived on August 7th, 2023. They are still accessible in 'public archive' mode, but development has halted. There is no way for contributors to submit Pull Requests and we don't know how long the repos will stay in 'public archive' mode, so it would be good if they could be forked to the Pulsar-edit org.

Any alternatives?

No alternative / do nothing

Other examples:

No response

Not showing featured packages

Thanks in advance for your bug report!

  • Have you reproduced issue in safe mode?
  • Have you used the debugging guide to try to resolve the issue?
  • Have you checked our FAQs to make sure your question isn't answered there?
  • Does your issue already exist?
  • Have you checked you are on the latest release of Pulsar?

What happened?

When running pulsar -p featured it does not return any results. This is due to pulsar-edit/package-backend#3. It can also be resolved if checking for relesases.latest is removed in https://github.com/pulsar-edit/ppm/blob/master/src/featured.coffee#L40, if that check is considered not necessary.

Which OS does this happen on?

🐧 Arch based (Manjaro, Garuda, etc.)

OS details

Gnome 43

Which CPU architecture are you running this on?

64-bit(x86_64)

What steps are needed to reproduce this?

  1. Run pulsar -p featured
  2. Get response Featured Atom Packages (0)

Additional Information:

No response

Migrate to (bundled) npm 8 or newer

Have you checked for existing feature requests?

  • Completed

Summary

Switching to (bundled) npm 8 or newer in apm.

My first plan would be to ask the author of atom-community/apm#123 if it is okay to use their implementation at this repo. We can then verify whether it "just works" at that point, or needs more work for successful integration of newer npm into ppm.

What benefits does this feature provide?

Newer npm brings newer node-gyp.

Newer npm should be much faster than npm 6.

Allegedly, but I think in my personal use I have in fact seen it to be faster.

Newer npm will be supported further into the future.

In summary: Node 14 has npm 6. Node 16 has npm 8. Node 18 has npm 9.

Node 14 support ends 30 April, which is soon. We want to be on something newer for longer support.

Support timeline for various npm versions

See NodeJS support timeline, that's what most of this is based off of: https://github.com/nodejs/release#release-schedule


Note: Most of the biggest churn and breaking changes happened in npm 7, if I recall correctly / in my subjective recollection.

This was around the time GitHub acquired npm (!), and they (in my subjective opinion), went though a bit of a "move fast, break things" phase. They technically haven't stopped doing the "moving fast" part, I really wish they would focus more on testing changes with the ecosystem, but that is my bias as an end-user-testing-focused contributor to open source projects that apparently use some of npm's most obscure (and so least well preserved) features and quirks. It's just that many of their biggest ideas for "breakin' stuff" got expressed into code by the time npm 7.x was done, and so once we get over that hurdle of getting "somewhere past npm 7", npm 8 and 9 should hopefully be relatively somewhat smoother.


Any alternatives?

Alternatives are to stay on an unsupported npm version (npm 6)...

Which I prefer not to do long-term, so why not get out ahead of the (semi-official unofficial) EOL of npm 6?

Other examples:

No response

Enhancements for `ppm publish`

Have you checked for existing feature requests?

  • Completed

Summary

I found a few issues with the publish task, mainly around the part where we check GitHub to see whether it knows about the new tag:

  1. The waitForTagToBeAvailable method assumes that the tag will eventually show up. It doesn't try to handle situations where the API returns errors — for example, because of an exceeded rate limit.
  2. It doesn't try to handle situations where we check the API 5 times and give up. We just resolve as though the tag is ready, even though it's clearly not ready yet. We should probably fail here with a helpful error message like “make sure the tag is present.”
  3. The exceeded rate limit is somewhat easy to trigger locally because it's 60 requests per hour for unauthenticated users. If waitForTagToBeAvailable used the same token that PPM uses in calls to the PPM API, that limit could be raised at least tenfold. It's worth doing.
  4. The code that calls waitForTagToBeAvailable doesn't have any error processing of its own. It doesn't envision that waitForTagToBeAvailable can fail in any way. If we can't be sure the tag is present, we shouldn't proceed with publishing.

What benefits does this feature provide?

Better error handling for ppm publish.

Any alternatives?

Probably.

Other examples:

No response

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.