Sublime Forum

Please Help Test Package Control

#1

There are a number of updates that have been made to Package Control recently, and I need some help testing them out to make sure nothing breaks. A big thank you to @ms4py for all of his debugging help and code.

To help test, please run the “Add Repository” command from the command palette and enter the following:

http://sublime.wbond.net/testing/packages.json

Once complete, please run the “Upgrade Package” command and select “Package Control”.

Be sure to try to install and remove a few packages and check the console (ctrl+`) to ensure there aren’t any errors.

Some of the bug fixes include:

  • Proxy auth fixes

  • Non-ASCII file path to ca_bundle fix

  • Disabling and re-enabling of a package when installing to prevent half-extracted packages from having some files parsed before the rest are ready

  • Quieted JSON errors

  • Updates for the BitBucket API

  • Fix so no network access happens on start when auto_upgrade = false

  • Moved the last run timestamp into a separate file so it is easy to ignore for committing and syncing

  • Added support for UTF-8 in package messaging files

0 Likes

#2

Sweet! Thanks for the update!
Tried to install couple of packages and seems to be ok.

Just an idea: when there is no update available, could you notify via status bar, not via alert? I mean alert is ok, but looks more like an error than a notification:
http://content.screencast.com/users/iamntz/folders/Jing/media/ad2d0d12-9543-4533-b957-5c536679bea0/2012-06-13_0838.png

0 Likes

#3

I’m behind an authenticated Proxy myself, made the upgrade, & everything seems to work fine. I installed & removed some packages without error.

I’m running release 2200 (dev channel) by the way.

0 Likes

#4

I’ve been unable to get proxy authentication to work. Our proxy (I think NTLM) grabs the authentication credentials from my windows login, so I don’t actually have the userid and password that are required to make the proxy connections. Applications like firefox and eclipse are able to use the proxy but not many others. I don’t expect wbond to solve this problem but maybe someone else has had success getting through a proxy like this?

Package Control: Error submitting usage information. URL error _ssl.c:480: error:140770FC:SSL routines:SSL23_GET_SERVER_HELLO:unknown protocol downloading https://sublime.wbond.net/submit?package_control_version=1.5.0&sublime_platform=windows&package=Package+Control&sublime_version=2198&version=1.5.0&operation=install.
Package Control: Error submitting usage information. URL error _ssl.c:480: error:140770FC:SSL routines:SSL23_GET_SERVER_HELLO:unknown protocol downloading https://sublime.wbond.net/submit?package_control_version=1.5.0&sublime_platform=windows&package=Theme+-+Soda+Refined&sublime_version=2198&version=1.0&operation=install.
0 Likes

#5

Just got one of these in the console after attempting an “Upgrade/Overwrite All Packages” following your Package Control upgrade:

Reloading /C/Users/GGatchel/AppData/Roaming/Sublime Text 2/Packages/User/Package Control.sublime-settings
Exception in thread Thread-13:
Traceback (most recent call last):
  File ".\threading.py", line 532, in __bootstrap_inner
  File ".\Package Control.py", line 2043, in run
  File ".\Package Control.py", line 1893, in disable_package
RuntimeError: Must call on main thread, consider using sublime.set_timeout(function, timeout)
0 Likes

#6

Removed ExportHTML and then reinstalled it. Now I have two entries for each menu option

0 Likes

#7

Disregard - duplicate entries were not caused by new version of Package Control

0 Likes

#8

I just attempted to disable a package and got the following error:

Traceback (most recent call last): File ".\sublime_plugin.py", line 339, in run_ File ".\Package Control.py", line 2240, in run Boost.Python.ArgumentError: Python argument types in sublime.load_settings(function) did not match C++ signature: load_settings(class std::basic_string<wchar_t,struct std::char_traits<wchar_t>,class std::allocator<wchar_t> >)

0 Likes

#9

Everything has worked fine for me here :smile:

0 Likes

#10

There is a new version in the testing repository. There is new proxy functionality, especially for Windows, so if you have a proxy please take a minute and help testing it.

The new version should fix all of the bugs reported here.

@jbjornson I added code that should allow NTLM authentication with a proxy. There are two new settings also, the proxy_username and proxy_password, which I am guessing you may need to set.

0 Likes

#11

Reloading plugin C:\Documents and Settings\sysadmin\Application Data\Sublime Text 2\Packages\Package Control\Package Control.py Traceback (most recent call last): File ".\sublime_plugin.py", line 62, in reload_plugin File ".\Package Control.py", line 28, in <module> from ntlm import HTTPNtlmAuthHandler ImportError: No module named ntlm reloading /C/Documents and Settings/sysadmin/Application Data/Sublime Text 2/Packages/Package Control/Package Control.sublime-settings found 2 files for base name Main.sublime-menu Traceback (most recent call last): File ".\Package Control.py", line 131, in <lambda> if hasattr(self.thread, 'result') and not self.thread.result: File ".\Package Control.py", line 124, in run self.success_message = success_message AttributeError: 'NoneType' object has no attribute 'status_message' Exception in thread Thread-11: Traceback (most recent call last): File ".\threading.py", line 532, in __bootstrap_inner File ".\Package Control.py", line 1871, in run vcs = 'hg' File ".\Package Control.py", line 1402, in install_package extracted_paths = ] AttributeError: 'NoneType' object has no attribute 'name'

0 Likes

#12

[quote=“MikeC”]Reloading plugin C:\Documents and Settings\sysadmin\Application Data\Sublime Text 2\Packages\Package Control\Package Control.py Traceback (most recent call last): File ".\sublime_plugin.py", line 62, in reload_plugin File ".\Package Control.py", line 28, in <module> from ntlm import HTTPNtlmAuthHandler ImportError: No module named ntlm reloading /C/Documents and Settings/sysadmin/Application Data/Sublime Text 2/Packages/Package Control/Package Control.sublime-settings found 2 files for base name Main.sublime-menu Traceback (most recent call last): File ".\Package Control.py", line 131, in <lambda> if hasattr(self.thread, 'result') and not self.thread.result: File ".\Package Control.py", line 124, in run self.success_message = success_message AttributeError: 'NoneType' object has no attribute 'status_message' Exception in thread Thread-11: Traceback (most recent call last): File ".\threading.py", line 532, in __bootstrap_inner File ".\Package Control.py", line 1871, in run vcs = 'hg' File ".\Package Control.py", line 1402, in install_package extracted_paths = ] AttributeError: 'NoneType' object has no attribute 'name' [/quote]

Is this error shown again if you restart Sublime Text?

0 Likes

#13

Hmm, no. After restarting, restoring my “http_proxy” setting and retrying “Package Control: Install Package” I still get the usual

Package Control: Error downloading channel. URL error [Errno 10065] A socket operation was attempted to an unreachable host downloading https://sublime.wbond.net/repositories.json.

but it does offer SFTP and SVN packages. Nothing else, though.

0 Likes

#14

[quote=“MikeC”]Hmm, no. After restarting, restoring my “http_proxy” setting and retrying “Package Control: Install Package” I still get the usual

Package Control: Error downloading channel. URL error [Errno 10065] A socket operation was attempted to an unreachable host downloading https://sublime.wbond.net/repositories.json.

but it does offer SFTP and SVN packages. Nothing else, though.[/quote]

Did you add your authentication info to the proxy_username and proxy_password settings?

0 Likes

#15

No. We don’t have separate usernames/passwords for the proxy so I assume it’s using the desktop session credentials, and I’d imagine that leaving those in a plaintext file would be grounds for dismissal.

0 Likes

#16

Would you be dismissed if you tried to see if it worked?

0 Likes

#17

Well, if it can be our little secret…

After setting those (and restarting ST2 for good measure) an Install attempt now gives me

Package Control: Error downloading channel. URL error [Errno 10061] No connection could be made because the target machine actively refused it downloading https://sublime.wbond.net/repositories.json.

which at least is different. Then offers the same SFTP and SVN packages as before.

0 Likes

#18

I’m in a similar boat to MikeC, except the error I’m getting is:

Package Control: Error downloading channel. URL error Tunnel connection failed: 407 Proxy Authentication Required downloading https://sublime.wbond.net/repositories.json.

That’s with both http_proxy and https_proxy set to a value like:

http://mycompany.com:8080

(same value for both, since AFAIK we’ve only got the one proxy).

I’ve tried setting proxy_username both to “rpardee” and “mydomain\rpardee”–no difference.

HTH,

-Roy

0 Likes

#19

Looks like the issue is specific to the HTTPS protocol–if I edit my repository_channels entry (just have the one) to pull that json file over plain HTTP it all works fine.

I’ve had similar behavior out of other tools–plain HTTP can work if I feed the tool the proxy server & give it my windows username/pwd in plain text, but HTTPS barfs.

Our proxy settings are set via a proxy.pac script, which I’m not totally confident I’m reading properly, but it looks to me like it sets the same value regardless of protocol, so I’m a tad baffled.

At any rate–would it be possible to have the proxy_password property accept some magic value that would cause PC to prompt the user to enter the pwd interactively rather than write it into this plain-text file?

Thanks!

-Roy

0 Likes

#20

Unfortunately GitHub and BitBucket only offer downloads via HTTPS, so even if you switch the channel file to HTTP, you won’t be able to install anything buy my packages. Plus, you’ll be vulnerable to man-in-the-middle attacks where a user could run arbitrary python code on your machine with your credentials.

I find it very odd that people seem not to have much trouble with proxying HTTP requests, but HTTPS offers lots of trouble. It makes me think something else is going on. Do HTTPS connections not normally go through a proxy or something? Is it an error that Package Control uses the http_proxy settings for HTTPS connections if the user does not specify an HTTPS proxy?

0 Likes