Cannot upgrade or otherwise change tex-live installation on Heroku - heroku

Pushes of updates to my app to Heroku are now rejected because of a tex-live incompatibility. See the error message below.
Heroku error message
remote: tlmgr: Remote repository is newer than local (2018 < 2019)
remote: Cross release updates are only supported with
remote: update-tlmgr-latest(.sh/.exe) --update
remote: Please see https://tug.org/texlive/upgrade.html for
details.
remote: ! Push rejected, failed to compile TeX Live app.
I have tried the following:
Add a file texlive.repository with contents ftp://tug.org/historic/systems/texlive/2018/tlnet-final. This does not work because the texlive repository lacks a required cryptographic certificate.
Delete the texlive buildpack and start over. Below is my buildpack config. However, when I try to remove it, I get this message:
$ heroku buildpacks:remove syphar/heroku-buildpack-tex
› Error: invalid json response body at https://buildpack-registry.heroku.com/buildpacks/syphar%2Fheroku-buildpack-tex reason: Unexpected end of JSON input
At this point I am stuck!
Heroku buildpacks
$ heroku buildpacks
=== nshost Buildpack URLs
1. https://github.com/HashNuke/heroku-buildpack-elixir.git
2. https://github.com/syphar/heroku-buildpack-tex.git

This works: in the file texlive.packages, replace
ftp://tug.org/historic/systems/texlive/2018/tlnet-final
with
https://www.math.utah.edu/pub/texlive/historic/systems/texlive/2018/tlnet-final
Solution courtesy of Nelson Beebe, University of Utah Mathematics Department

Related

Exporting dependencies from package which is existing vendor

I am new to golang and glide dependency management tool. I am trying to run glide install in created my company project. I have met an error about go-xorm library.
[ERROR] Update failed for github.com/go-xorm/xorm: Unable to get repository: Cloning into '/Users/xxx/.glide/cache/src/https-github.com-go-xorm-xorm'...
remote: Repository `go-xorm/xorm' is disabled.
remote: Please ask the owner to check their account.
fatal: unable to access 'https://github.com/go-xorm/xorm/': The requested URL returned error: 403
: exit status 128
[ERROR] Failed to checkout packages: Unable to get repository: Cloning into '/Users/xxx/.glide/cache/src/https-github.com-go-xorm-xorm'...
remote: Repository `go-xorm/xorm' is disabled.
remote: Please ask the owner to check their account.
fatal: unable to access 'https://github.com/go-xorm/xorm/': The requested URL returned error: 403
: exit status 128
It's seem that I am not able to download it from github because the owner made it disabled to clone.
How can I fix this error or Is there any way to export directly from local vendor without fetching from github. I am sure that the package is already on my local vendor folder. Thank you so much!!!
This is because XORM moved from Github (repo is still available as Public Archive) to Gitea and instead of github.com/go-xorm/xorm they now use xorm.io/xorm.
I'd recommend to stop using glide completely and replace it with Go Modules based workflow; but if you must use it, you will need to remove github.com/go-xorm/xorm from your glide.yaml, add xorm.io/xorm (you can use glide get to do so) and fix your imports everywhere in codebase.

Authentication error in Heroku pip install my private repo

I'm trying to push my Django app to heroku, and gets Authentication error when installing my
private repo from github.
I've generated Personal Access Token and added it to my Environment Variables as GITHUB_TOKEN.
I've tried many combinations in my requirements.txt:
package_name # git+https://$dviralfi:${GITHUB_TOKEN}#github.com/dviralfi/package_name.git
package_name # git+https://${GITHUB_USER}:${GITHUB_TOKEN}#github.com/dviralfi/package_name.git
package_name # git+https://${GITHUB_TOKEN}#github.com/dviralfi/package_name.git
None of them is working.
I get all sort of errors:
remote: Support for password authentication was removed on August 13, 2021. Please use a personal access token instead.
remote: remote: Please see https://github.blog/2020-12-15-token-authentication-requirements-for-git-operations/ for more information.
remote: fatal: Authentication failed for 'https://github.com/dviralfi/package_name.git/'
fatal: could not read Password for 'https://${GITHUB_TOKEN}#github.com': No such device or address

Revel app with local packages in heroku

I am trying to deploy a revel app in heroku, in which I have this folder structure:
+Base
+app
+controllers
-app.go
+views
+models
-user.go
+routes
+conf
+public
+test
.godir
In app.go I try to include models and routes doing this:
import("base/app/models")
I am able to run app in local, and after I can use models.User. I had tried to make a lot of ways to import these local packages in heroku:
import("../models")
import("../models/user")
import("./app/models")
import("./base/app/models")
I don't remember now all attempts, but I am trying it for a long time and I don't know ho to do.
I am using locally go 1.6, and 1.4 when I push. And this is the trace that appears when I run git push heroku master
Counting objects: 93, done.
Delta compression using up to 4 threads.
Compressing objects: 100% (86/86), done.
Writing objects: 100% (93/93), 11.68 KiB | 0 bytes/s, done.
Total 93 (delta 50), reused 0 (delta 0)
remote: Compressing source files... done.
remote: Building source:
remote:
remote: -----> Revel app detected
remote: -----> Using go1.4
remote: -----> Running: go get -tags heroku ./...
remote: can't load package: /tmp/build_02574263f0810eec437968b2e73f635d/.go/src/base/app/controllers/gorp.go:10:2: local import "../models" in non-local package
remote: ! Push rejected, failed to compile Revel app.
remote:
remote: ! Push failed
remote: Verifying deploy...
remote:
remote: ! Push rejected to ndc-console.
remote:
To https://git.heroku.com/ndc-console.git
! [remote rejected] master -> master (pre-receive hook declined)
error: failed to push some refs to 'https://git.heroku.com/ndc-console.git'
It happens using import("base/app/models").
Any solution?? Thank you.
EDIT
I log into heroku bash (running heroku run bash) and I see the folder structure, and it is something like:
bin
dev
more...
app /*This is the base folder*/
app
controllers
views
models
routes
config
public
.go /*this is the GOPATH*/
src
github.com
golang.org
gopkg.in
base-test /* This name is because I change the original name, from base-test to base... */
/* IS IT IMPORTANT? */
/* Inside this folder the app is duplicated */
In this way I tried too import("base-test/app/models") and too including all path from root (trying absurd things).
I hope it helps to find a solution. Thanks.
Ok!!! done!!
Finally, the old name of the project was generating a problem. It seems that when I change the name of the heroku app, heroku doesn't change the name of the folder when it will be compiled... AND I need change too the content of the .godir file and set it as base-test (the old name).
So now the imports I have looks like: import("base-test/app/models").
Thank you everyone.

compiling error when using community golang buildpack on bluemix

One of my bluemix application worked for weeks but it start to report parse error with Buildpack compilation step failed when pushing app to bluemix:
-----> Downloaded app package (556K)
Cloning into '/tmp/buildpacks/buildpack-go'...
Submodule 'compile-extensions' (https://github.com/cloudfoundry-incubator/compile-extensions.git) registered for path 'compile-extensions'
Cloning into 'compile-extensions'...
Submodule path 'compile-extensions': checked out 'f752ecf4b27d2f31bb082dfe7a47c76fefc769d7'
-------> Buildpack version 1.4.0
parse error: Expected separator between values at line 32, column 3
Staging failed: Buildpack compilation step failed
Here's my manifest.yml file:
---
applications:
- name: joystick
memory: 128M
path: .
buildpack: https://github.com/cloudfoundry/buildpack-go.git
Update: I carefully read the error message and figured out it is application space problem caused by Godeps.json parsing error caused by code merging where one comma is missed. I can not reproduce this locally because I checked in _workspace directory where it never parse Godeps.json.
I created issue 86 to improve this buildpack to provide more information for such kind of error message.
The error message parse error: Expected separator between values at line 32, column 3 comes from jq command within buildpack code, where it tries to read import path from Godeps/Godeps.json by assuming it's a valid JSON file. see line #64 of /bin/compile.
It will stop buildpack if the Godeps.json is not json.
I created issue 86 to improve this buildpack to provide more information for such kind of error message.
Thanks for everyone who spent time on this problem.
Update: issue 86 was fixed in heroku golang buildpack by adding new step to checking Godeps.json format.

Deploy meteor/meteorite 0.8.3 to heroku

I just updated my app to meteor 0.8.3. Locally it runs without problems. But when I try to push it to heroku, I'll get the following error:
Building meteor bundle
simple-schema: updating npm dependencies -- string...
iron-router: updating npm dependencies -- connect...
lodash: updating npm dependencies -- lodash...
Errors prevented bundling:
While building the application:
error: no such package: 'accounts-ui-bootstrap-3'
error: no such package: 'accounts-entry'
While building package `iron-dynamic-template`:
error: no such package: 'blaze'
tar: /app/tmp/cache/bundle.tar.gz: Cannot open: No such file or directory
tar: Error is not recoverable: exiting now
tar: Child returned status 2
tar: Exiting with failure status due to previous errors
! Push rejected, failed to compile Meteor app app
For deployment, I used the buildpack of oortcloud. This worked proper in the past. https://github.com/oortcloud/heroku-buildpack-meteorite
I'm most confused by the earlier log entries before the error happens. Here it says that Meteor 0.8.1.1 is being installed. A couple of lines after that it confirms that Meteor 0.8.3 has been installed. I'm pretty sure that this is the same issue like this. https://github.com/EventedMind/iron-dynamic-template/issues/2
Installing Meteor 0.8.1.1
* 'meteor' build tool (vers
* 'meteor' build tool (version 43b8566b9f)
* Package updates: accounts-base accounts-meteor-developer accounts-oauth
accounts-password accounts-ui accounts-ui-unstyled amplify appcache
application-configuration autoupdate browser-policy browser-policy-common
browser-policy-content check coffeescript coffeescript-test-helper ctl
ctl-helper deps ejson email facebook facts follower-livedata force-ssl github
google html-tools htmljs http jquery-waypoints js-analyze less livedata
localstorage logging meetup meteor meteor-developer minifiers minimongo
mongo-livedata oauth oauth-encryption oauth1 oauth2 observe-sequence
reactive-dict routepolicy session showdown spacebars spacebars-compiler
spacebars-tests spiderable srp star-translate stylus templating test-helpers
test-in-browser tinytest twitter ui underscore-tests webapp weibo
Meteor 0.8.3 has been installed in your home directory (~/.meteor).
Now you need to do one of the following:
(1) Add ~/.meteor to your path, or
(2) Run this command as root:
cp ~/.meteor/tools/latest/launch-meteor /usr/bin/meteor
Then to get started, take a look at 'meteor --help' or see the docs at
docs.meteor.com.
I also tried to create a new meteorite app to get rid of dangling dependencies. But without success!
What can I do? Is there a chance to debug the push/deploy on the heroku server?
The outdated file .meteor/release caused the problem:
git heroku push master fetches the files to deploy from the origin git repository. It doesn't care about local, unstaged files. Somehow the file .meteor/release has not been pushed to the origin repository. So during the installation routine at heroku the meteor version was 0.8.1.1 and not 0.8.3.
Solution to avoid this problem:
Check/Add the files .meteor/release and .meteor/packages to your origin git repo
Test only what's in your origin repo before you deploy it. Use git pull

Resources