-
Notifications
You must be signed in to change notification settings - Fork 3.5k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Canary update not working #2522
Comments
Relevant part of SquirrelSetup.log2017-12-05 09:47:04> Program: Starting Squirrel Updater: --checkForUpdate https://releases-canary.hyper.is/update/win32/2.1.1 2017-12-05 09:47:04> Program: Fetching update information, downloading from https://releases-canary.hyper.is/update/win32/2.1.1 2017-12-05 09:47:04> CheckForUpdateImpl: Using existing staging user ID: 129930b1-6218-50f5-b76c-fc66a947eb3a 2017-12-05 09:47:04> CheckForUpdateImpl: Downloading RELEASES file from https://releases-canary.hyper.is/update/win32/2.1.1 2017-12-05 09:47:04> FileDownloader: Downloading url: https://releases-canary.hyper.is/update/win32/2.1.1/RELEASES?id=hyper&localVersion=2.1.1&arch=amd64 2017-12-05 09:47:05> CheckForUpdateImpl: hwhat, local version is greater than remote version 2017-12-05 09:47:05> UpdateInfo: Couldn't get release notes for:hyper-2.0.0-canary8-full.nupkg: System.IO.FileNotFoundException: Could not find file 'C:\Users\pdanis\AppData\Local\hyper\packages\hyper-2.0.0-canary8-full.nupkg'. File name: 'C:\Users\pdanis\AppData\Local\hyper\packages\hyper-2.0.0-canary8-full.nupkg' at System.IO.__Error.WinIOError(Int32 errorCode, String maybeFullPath) at System.IO.FileStream.Init(String path, FileMode mode, FileAccess access, Int32 rights, Boolean useRights, FileShare share, Int32 bufferSize, FileOptions options, SECURITY_ATTRIBUTES secAttrs, String msgPath, Boolean bFromProxy, Boolean useLongPath, Boolean checkHost) at System.IO.FileStream..ctor(String path, FileMode mode, FileAccess access, FileShare share) at NuGet.ZipPackage.<>c__DisplayClass9_0.<.ctor>b__0() at NuGet.ZipPackage.EnsureManifest() at NuGet.ZipPackage..ctor(String filePath, Boolean enableCaching) at Squirrel.ReleaseEntry.GetReleaseNotes(String packageDirectory) at Squirrel.UpdateInfo.b__19_0(ReleaseEntry x) 2017-12-05 09:47:05> Program: Starting Squirrel Updater: --update https://releases-canary.hyper.is/update/win32/2.1.1 2017-12-05 09:47:05> Program: Starting update, downloading from https://releases-canary.hyper.is/update/win32/2.1.1 2017-12-05 09:47:05> Program: About to update to: C:\Users\pdanis\AppData\Local\hyper 2017-12-05 09:47:05> CheckForUpdateImpl: Using existing staging user ID: 129930b1-6218-50f5-b76c-fc66a947eb3a 2017-12-05 09:47:05> CheckForUpdateImpl: Downloading RELEASES file from https://releases-canary.hyper.is/update/win32/2.1.1 2017-12-05 09:47:05> FileDownloader: Downloading url: https://releases-canary.hyper.is/update/win32/2.1.1/RELEASES?id=hyper&localVersion=2.1.1&arch=amd64 2017-12-05 09:47:07> CheckForUpdateImpl: hwhat, local version is greater than remote version 2017-12-05 09:47:07> FileDownloader: Downloading file: https://github.com/zeit/hyper/releases/download/2.0.0-canary.8/hyper-2.0.0-canary8-full.nupkg 2017-12-05 09:49:15> ApplyReleasesImpl: Writing files to app directory: C:\Users\pdanis\AppData\Local\hyper\app-2.0.0-canary8 2017-12-05 09:49:16> LogHost: Rigging execution stub for lib/net45/Hyper_ExecutionStub.exe to C:\Users\pdanis\AppData\Local\hyper\Hyper.exe 2017-12-05 09:49:18> ApplyReleasesImpl: Squirrel Enabled Apps: [C:\Users\pdanis\AppData\Local\hyper\app-2.1.1\Hyper.exe] 2017-12-05 09:49:21> ApplyReleasesImpl: Starting fixPinnedExecutables 2017-12-05 09:49:21> ApplyReleasesImpl: Examining Pin: Excel 2013.lnk 2017-12-05 09:49:21> ApplyReleasesImpl: Examining Pin: Google Chrome.lnk 2017-12-05 09:49:21> ApplyReleasesImpl: Examining Pin: Internet Explorer.lnk 2017-12-05 09:49:21> ApplyReleasesImpl: Examining Pin: Outlook 2013.lnk 2017-12-05 09:49:21> ApplyReleasesImpl: Examining Pin: SAP Logon.lnk 2017-12-05 09:49:21> ApplyReleasesImpl: Examining Pin: Skype for Business 2015.lnk 2017-12-05 09:49:21> ApplyReleasesImpl: Examining Pin: Windows Explorer.lnk 2017-12-05 09:49:21> ApplyReleasesImpl: Fixing up tray icons 2017-12-05 09:49:21> ApplyReleasesImpl: Couldn't rewrite shim RegKey, most likely no apps are shimmed: System.NullReferenceException: Object reference not set to an instance of an object. at Squirrel.UpdateManager.ApplyReleasesImpl.b__13_0(RegistryView view) 2017-12-05 09:49:21> ApplyReleasesImpl: Couldn't rewrite shim RegKey, most likely no apps are shimmed: System.NullReferenceException: Object reference not set to an instance of an object. at Squirrel.UpdateManager.ApplyReleasesImpl.b__13_0(RegistryView view) 2017-12-05 09:49:21> ApplyReleasesImpl: cleanDeadVersions: for version 2.1.1 2017-12-05 09:49:21> ApplyReleasesImpl: cleanDeadVersions: exclude folder app-2.1.1 2017-12-05 09:49:21> ApplyReleasesImpl: cleanDeadVersions: exclude folder app-2.1.1 |
I'm experiencing this too. I thought there was something wrong in my setup, as 2.0.0 seems older than 2.1.1; I didn't understand why it was asking me to update. Also, I don't know if this is related but the "(notes)" link in the update popup is broken; it opens up https://github.com/zeit/hyper/releases/tag/2.0.0-canary8 which serves a 404 error. I believe the correct link should be https://github.com/zeit/hyper/releases/tag/2.0.0-canary.8 (with a dot between canary and 8.) |
I reproduced these 2 issues 😞 We have changed our versioning to have a And indeed, our |
We're working on finding a fix for this problem! Squirrel for Windows isn't that nicely built, so that's why were having problems, basically. |
@leo Sorry if this is irrelevant but the issue appears to me that the update might be pointing to https://github.com/zeit/hyper/releases/tag/2.0.0-canary8 instead of https://github.com/zeit/hyper/releases/tag/2.0.0-canary.8 Just thought this may/may not help. My apologies if ye already diagnosed the issue or something. |
The problem here is that squirrel for windows (the auto update framework that's included in electron and responsible for handling updates on windows) compares the version of the downloaded update to the version of the running application. And since we had to publish an update with the tag So we need to find a way to make squirrel think the version it downloaded is higher - but not actually place a higher releases on the device. |
I noticed this issue while I was testing hyper's update system. |
@3rdvision We already patched our update server to work exactly like that. But we can't configure Squirrel to do that, because there's no way to do so. In addition, we can't even access the squirrel instance on the user's device (windows canary). |
I'm already running 2.0.0-canary.8 on my other computer and today I've got the following notification telling me version 1.4.8 is ready, which AFAIK is not a canary version: This time "(notes)" points to https://releases-canary.hyper.is/update/win32/2.0.0-canary.8, which is not broken but serves an empty response. |
@dliuzzi Could you show me your hyper.js file and tell me what operating system you are using 🤔 |
@mapeso
|
@dliuzzi @Dean-Coakley I thought the problem was related to the OSX version, for now the Windows version has some problems but soon we will send instructions so they can solve the problem 😺 for the moment I recommend that you stay in the stable version. Thanks for your understanding ❤️ |
@mapeso Sure thing! I'm using Windows 10 Pro 64-bit (10.0.16299.125). Here's my .hyper.js file: // Future versions of Hyper may add additional config options,
// which will not automatically be merged into this file.
// See https://hyper.is#cfg for all currently supported options.
module.exports = {
config: {
// Choose either "stable" for receiving highly polished,
// or "canary" for less polished but more frequent updates
updateChannel: 'canary',
// default font size in pixels for all tabs
fontSize: 17,
// font family with optional fallbacks
fontFamily: '"Fira Code Light", Menlo, "DejaVu Sans Mono", Consolas, "Lucida Console", monospace',
// terminal cursor background color and opacity (hex, rgb, hsl, hsv, hwb or cmyk)
cursorColor: 'rgba(248,28,229,0.8)',
// `BEAM` for |, `UNDERLINE` for _, `BLOCK` for █
cursorShape: 'BLOCK',
// set to true for blinking cursor
cursorBlink: false,
// color of the text
foregroundColor: '#fff',
// terminal background color
backgroundColor: '#000',
// border color (window, tabs)
borderColor: '#333',
// custom css to embed in the main window
css: '',
// custom css to embed in the terminal window
termCSS: '',
// set to `true` (without backticks and without quotes) if you're using a
// Linux setup that doesn't show native menus
// default: `false` on Linux, `true` on Windows (ignored on macOS)
showHamburgerMenu: '',
// set to `false` if you want to hide the minimize, maximize and close buttons
// additionally, set to `'left'` if you want them on the left, like in Ubuntu
// default: `true` on windows and Linux (ignored on macOS)
showWindowControls: '',
// custom padding (css format, i.e.: `top right bottom left`)
padding: '12px 14px',
// the full list. if you're going to provide the full color palette,
// including the 6 x 6 color cubes and the grayscale map, just provide
// an array here instead of a color map object
colors: {
black: '#000000',
red: '#ff0000',
green: '#33ff00',
yellow: '#ffff00',
blue: '#0066ff',
magenta: '#cc00ff',
cyan: '#00ffff',
white: '#d0d0d0',
lightBlack: '#808080',
lightRed: '#ff0000',
lightGreen: '#33ff00',
lightYellow: '#ffff00',
lightBlue: '#0066ff',
lightMagenta: '#cc00ff',
lightCyan: '#00ffff',
lightWhite: '#ffffff',
},
// the shell to run when spawning a new session (i.e. /usr/local/bin/fish)
// if left empty, your system's login shell will be used by default
//
// Windows
// - Make sure to use a full path if the binary name doesn't work
// - Remove `--login` in shellArgs
//
// Bash on Windows
// - Example: `C:\\Windows\\System32\\bash.exe`
//
// Powershell on Windows
// - Example: `C:\\WINDOWS\\System32\\WindowsPowerShell\\v1.0\\powershell.exe`
shell: 'powershell.exe',
// for setting shell arguments (i.e. for using interactive shellArgs: ['-i'])
// by default ['--login'] will be used
shellArgs: ['-NoLogo'],
// for environment variables
env: {},
// set to false for no bell
bell: 'SOUND',
// if true, selected text will automatically be copied to the clipboard
copyOnSelect: false,
// if true, on right click selected text will be copied or pasted if no
// selection is present (true by default on Windows)
// quickEdit: true,
// URL to custom bell
// bellSoundURL: 'http://example.com/bell.mp3',
// for advanced config flags please refer to https://hyper.is/#cfg
},
// a list of plugins to fetch and install from npm
// format: [@org/]project[#version]
// examples:
// `hyperpower`
// `@company/project`
// `project#1.0.1`
plugins: [
'hyper-snazzy'
],
// in development, you can create a directory under
// `~/.hyper_plugins/local/` and include it here
// to load it and avoid it being `npm install`ed
localPlugins: [],
keymaps: {
// Example
// 'window:devtools': 'cmd+alt+o',
},
}; |
I added Here's my .hyper.js module.exports = {
config: {
updateChannel: 'canary',
themeSettings: {
// Do not make background transparent (default is 0.9)
opacity: 0.7,
// Switch from luke's orange uniform to master yoda (check the available styles above)
// style: 'yoda',
// Change the character that mars a tab active
// tabActiveMarker: '💁'
},
cursorBlink: true,
// default font size in pixels for all tabs
fontSize: 13,
// font family with optional fallbacks
// fontFamily: 'Menlo, "DejaVu Sans Mono", "Lucida Console", monospace',
// fontFamily: '"Monoid", "Source Code Pro for Powerline", Hack',
// fontFamily: '"Monoid"',
// fontFamily: '"Hasklig"'
// fontFamily: '"Source Code Pro for Powerline", Hack',
fontFamily: '"Fira Code"',
// fontFamily: '"Source Code Pro Medium for Powerline", "Source Code Pro for Powerline", Hack',
// fontFamily: 'Hack',
// terminal cursor background color and opacity (hex, rgb, hsl, hsv, hwb or cmyk)
cursorColor: 'rgba(248,28,229,0.75)',
// `BEAM` for |, `UNDERLINE` for _, `BLOCK` for █
cursorShape: 'BLOCK',
// color of the text
foregroundColor: '#fff',
// terminal background color
backgroundColor: '#000',
// border color (window, tabs)
borderColor: '#333',
// custom css to embed in the main window
css: '',
// custom css to embed in the terminal window
termCSS: '',
// custom padding (css format, i.e.: `top right bottom left`)
padding: '12px 14px',
// the full list. if you're going to provide the full color palette,
// including the 6 x 6 color cubes and the grayscale map, just provide
// an array here instead of a color map object
colors: {
black: '#000000',
red: '#ff0000',
green: '#33ff00',
yellow: '#ffff00',
blue: '#0066ff',
magenta: '#cc00ff',
cyan: '#00ffff',
white: '#d0d0d0',
lightBlack: '#808080',
lightRed: '#ff0000',
lightGreen: '#33ff00',
lightYellow: '#ffff00',
lightBlue: '#0066ff',
lightMagenta: '#cc00ff',
lightCyan: '#00ffff',
lightWhite: '#ffffff'
},
// enableVibrance: true,
// backgroundOpacity: '0.8',
// the shell to run when spawning a new session (i.e. /usr/local/bin/fish)
// if left empty, your system's login shell will be used by default
// shell: '',
shell: '/usr/local/bin/fish',
// for setting shell arguments (i.e. for using interactive shellArgs: ['-i'])
// by default ['--login'] will be used
shellArgs: ['--login'],
// for environment variables
env: {},
// set to false for no bell
bell: 'SOUND',
// if true, selected text will automatically be copied to the clipboard
copyOnSelect: false
// URL to custom bell
// bellSoundURL: 'http://example.com/bell.mp3',
// for advanced config flags please refer to https://hyperterm.org/#cfg
},
// a list of plugins to fetch and install from npm
// format: [@org/]project[#version]
// examples:
// `hyperpower`
// `@company/project`
// `project#1.0.1`
plugins: [
// 'hyperline',
// 'hyperterm-tab-cwd',
// 'hyperterm-mactabs',
// 'hyperterm-tab-icons',
// 'hyperborder',
// 'hyperterm-atom-dark',
// 'hyperterm-monokai',
// 'hyperterm-one-monokai',
// 'hyper-material-theme',
// "hyper-cat",
// 'hyper-simple-vibrancy',
// 'hyper-blink',
// 'hyper-dracula',
'an-old-hype',
'hyperterm-dibdabs',
'hyperterm-subpixel-antialiased',
'hyper-search',
// 'hyperminimal',
'hyperterm-oceanic-next',
// 'hyper-statusline'
// 'hyperterm-one-dark'
// 'hyperterm-base16-tomorrow-night',
// 'hyperterm-seti',
// 'predawn-hyperterm'
// 'hyperterm-ir-black'
],
// in development, you can create a directory under
// `~/.hyperterm_plugins/local/` and include it here
// to load it and avoid it being `npm install`ed
localPlugins: []
}; |
@portenez I suppose that you are on Linux? |
@chabou no macos |
@portenez are you changing the correct config file? if i change my Can you check this and report back, thanks. This applies even without restart (just close and open the about window to see the updated text) |
I don't know what it was! but I finally made it work. There's an issue with the performance in |
What type of performance issue ? |
I'm experiencing the same as #2592 |
Unfortunately as of Firstly, the link to notes points to https://releases-canary.hyper.is/update/win32/2.0.0-canary.9 which, oddly enough, actually shows canary.10 information: {
name: "2.0.0-canary.10",
notes: "Better resizing and fixed blinking cursors 💅 ### Patches - Fix Windows keymap delete typo: #2575 - Make CLI perform static analysis of config lazily: #2593 - Use xterm.js's fit addon when calling fitResize: #2594 - Fix CLI installation on Windows: #2600 - Fix offscreen term size calculation: #2612 - Fix initial cursor blinking: #2614 ### Credits Huge thanks to @dliuzzi, @bgw and @chabou for helping!",
pub_date: "2018-01-17T15:13:46Z",
url: "https://github.com/zeit/hyper/releases/download/2.0.0-canary.10/hyper-Setup-2.0.0-canary.10.exe"
} More importantly, the update still won't work; no matter how many times I click Restart, going to Help > About Hyper always shows This of course results in the same update popup being shown. |
On macOS, I can install 2.0.0 canary 9 or 10, but it will automatically be "updated" to stable 1.4.8 when I next restart hyper |
@crostine Sadly, rollback doesn't work on windows. You should reinstall stable release manually. |
That was a hiccup we had, everything should work as expected now though. |
Issue
Update from canary 2.1.1 to 2.0.0-canary.8 is not working. After I start the app, it downloads the 2.0.0-canary.8 package and prompts for restart, but nothing happens afterwards. After restart the app version is still 2.1.1. Tried several times.
The text was updated successfully, but these errors were encountered: