Giter Site home page Giter Site logo

overleaf-sync's Introduction

Hi, I'm Moritz πŸ‘‹

An IT consultant/software developer from/based in πŸ‡¦πŸ‡Ή Vienna, Austria.

πŸŽ“ Education

  • Bachelor's Degree in Computing
  • Master's Degree in IT-Law and Management

πŸ’‘ Interests

  • GDPR and data protection, privacy online
  • Cybersecurity
  • Open Source and FOSS
  • E-Government (Austrian Handy-Signatur, BΓΌrgerkarte)
  • Blockchain, Ethereum, Smart Contracts
  • Raspberry Pi & Arduino
  • ...and many more!

πŸ’» Working with

  • Ruby/Rails
  • Python
  • Angular/Typescript
  • Android/Kotlin
  • ...and many more!

🧰 Projects I'm working on

🎁 Projects ⭐ Stars 🍴 Forks ❗ Issues πŸ“¬ Pull requests
Overleaf Two-Way Synchronization Command Line Tool GitHub stars GitHub forks GitHub issues GitHub pull requests
Ducky Encoder GUI GitHub stars GitHub forks GitHub issues GitHub pull requests
Webpage to generate GDPR requests GitHub stars GitHub forks GitHub issues GitHub pull requests
Ruby PDF library to sign PDF files GitHub stars GitHub forks GitHub issues GitHub pull requests

visitor badge

overleaf-sync's People

Contributors

johnzielke avatar joleaf avatar meliache avatar moritzgloeckl avatar seapat avatar tiri avatar zeyutang avatar zq1997 avatar zzjjzzgggg avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar

overleaf-sync's Issues

Error: Querying all projects failed. Please try again.

Command ols list doesn't work.
I am successfully logged in via ols login.
This is the output of ols list -v:

β § Querying all projectsTraceback (most recent call last):
  File "/usr/local/lib/python3.11/site-packages/olsync/olsync.py", line 348, in execute_action
    success = action()
              ^^^^^^^^
  File "/usr/local/lib/python3.11/site-packages/olsync/olsync.py", line 142, in query_projects
    for index, p in enumerate(sorted(overleaf_client.all_projects(), key=lambda x: x['lastUpdated'], reverse=True)):
                                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.11/site-packages/olsync/olclient.py", line 92, in all_projects
    BeautifulSoup(projects_page.content, 'html.parser').find('meta', {'name': 'ol-projects'}).get('content'))
    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
AttributeError: 'NoneType' object has no attribute 'get'

πŸ’₯  Querying all projects
Error: Querying all projects failed. Please try again.

Support for sync with GitHub repo.

Thanks for making this really cool project!

I was wondering if the developer would be interested in adding support for syncing between Overleaf and a GitHub repo? This would be really useful. Overleaf technically already has support for this, but it is behind a paywall.

Project details could not be queried.

I'm sorry for just provide such little information, but there seems no verbose option provided.

Project queried successfully.
βœ…  Querying project
Error: Project details could not be queried.

New installed from pip, python 3.8.2, login successfully, but error when sync.
Reproduced with different project and machine.

QtWebEngineWidgets ImportError

OS: macOS 12.5.1
Python: 3.10

olbrowserlogin.py fails on from PyQt5.QtWebEngineWidgets import *:

Traceback (most recent call last):
  File "/usr/local/lib/python3.10/site-packages/olsync/olsync.py", line 26, in <module>
    import olsync.olbrowserlogin as olbrowserlogin
  File "/usr/local/lib/python3.10/site-packages/olsync/olbrowserlogin.py", line 15, in <module>
    from PyQt5.QtWebEngineWidgets import *
ImportError: dlopen(/usr/local/lib/python3.10/site-packages/PyQt5/QtWebEngineWidgets.abi3.so, 0x0002): Symbol not found: (_CGLGetCurrentContext)
  Referenced from: '/usr/local/lib/python3.10/site-packages/PyQt5/Qt5/lib/QtWebEngineCore.framework/Versions/5/QtWebEngineCore'
  Expected in: '/System/Library/Frameworks/OpenGL.framework/Versions/A/OpenGL'

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/usr/local/bin/ols", line 5, in <module>
    from olsync.olsync import main
  File "/usr/local/lib/python3.10/site-packages/olsync/olsync.py", line 30, in <module>
    from . import olbrowserlogin
  File "/usr/local/lib/python3.10/site-packages/olsync/olbrowserlogin.py", line 15, in <module>
    from PyQt5.QtWebEngineWidgets import *
ImportError: dlopen(/usr/local/lib/python3.10/site-packages/PyQt5/QtWebEngineWidgets.abi3.so, 0x0002): Symbol not found: (_CGLGetCurrentContext)
  Referenced from: '/usr/local/lib/python3.10/site-packages/PyQt5/Qt5/lib/QtWebEngineCore.framework/Versions/5/QtWebEngineCore'
  Expected in: '/System/Library/Frameworks/OpenGL.framework/Versions/A/OpenGL'

Unable to login

When I try to log in using the command ols login, I get this error.

Gtk-Message: 02:46:58.768: Failed to load module "xapp-gtk3-module"
Gtk-Message: 02:46:58.768: Failed to load module "xapp-gtk3-module"
Error: Login failed. Please try again.

Distributor ID: Ubuntu
Description: Ubuntu Jammy Jellyfish (development branch)
Release: 22.04
Codename: jammy

Cannot complete any querry

Just installed ols on my M2 MacBook, running it through a Python environment on terminal, but I cannot complete any querry.
This is all I get when trying to run ols -v:
(env) lsdsumus@imac ~ % ols -v πŸ’₯ Querying project Error: Project could not be queried.
Already fixed some errors by replacing lines 92 and 104 in olclient.py as stated in this issue and downgrading to urllib3 1.26.15 for compatibility issues with OpenSSL.

Issues when attempting to sync only subfolders

Hello,

Is it possible to sync the local folder with a different name than the one on Overleaf? Currently my local project folders have the following structure: "project-A/Code", ""project-A/Data", "project-A/Draft". I'd like to sync only contents in "project-A/Draft" to Overleaf's "project-A".

I am trying to specify the subfolder directory when typing in the command: ols -l -p Draft. But it returns the following error:

No such file or directory: 'Draft/Draft/[filename]'

Am I using the directory option incorrectly?

multiple lines of `.olignore: using .olignore to filter items`

On wsl, the out put of v1.2.0 looks like this.

output details

Syncing files from [local] to [remote]:

========================================

.olignore: using .olignore to filter items
========================================

.olignore: using .olignore to filter items
========================================

.olignore: using .olignore to filter items
========================================

.olignore: using .olignore to filter items
========================================

.olignore: using .olignore to filter items
========================================

.olignore: using .olignore to filter items
========================================

.olignore: using .olignore to filter items
========================================

.olignore: using .olignore to filter items
========================================

.olignore: using .olignore to filter items
========================================

.olignore: using .olignore to filter items
========================================

.olignore: using .olignore to filter items
========================================

.olignore: using .olignore to filter items
========================================

.olignore: using .olignore to filter items
========================================

.olignore: using .olignore to filter items
========================================

.olignore: using .olignore to filter items
========================================

.olignore: using .olignore to filter items
========================================

.olignore: using .olignore to filter items
========================================

.olignore: using .olignore to filter items
========================================

.olignore: using .olignore to filter items
========================================

.olignore: using .olignore to filter items
========================================

.olignore: using .olignore to filter items
========================================

.olignore: using .olignore to filter items
========================================

.olignore: using .olignore to filter items
========================================

.olignore: using .olignore to filter items
========================================

.olignore: using .olignore to filter items
========================================

.olignore: using .olignore to filter items
========================================

.olignore: using .olignore to filter items
========================================

.olignore: using .olignore to filter items
========================================

.olignore: using .olignore to filter items
========================================

.olignore: using .olignore to filter items
========================================

.olignore: using .olignore to filter items
========================================

.olignore: using .olignore to filter items
========================================

.olignore: using .olignore to filter items
========================================

.olignore: using .olignore to filter items
========================================

.olignore: using .olignore to filter items
========================================

.olignore: using .olignore to filter items
========================================

.olignore: using .olignore to filter items
========================================

.olignore: using .olignore to filter items
========================================

.olignore: using .olignore to filter items
========================================

.olignore: using .olignore to filter items
========================================

.olignore: using .olignore to filter items
========================================

.olignore: using .olignore to filter items
========================================

.olignore: using .olignore to filter items
========================================

.olignore: using .olignore to filter items

Syncing files from [local] to [remote]
========================================

It seems redundant.

Login and Sync does not work anymore

I noticed that the project isn't querying anymore.
Then I tried to renew the oauth token but the login is also failing (credentials are 100% correct - works via website).

A fix for this would be nice - thanks Moritz! :)

πŸ’₯Querying all projects Error: Querying all projects failed.

Hi. Hope everything goes fine with you. I'm interesting in this project very much. However, I got this text when I would like to list my projects in overleaf.
"πŸ’₯ Querying all projects
Error: Querying all projects failed. Please try again."
Could you help me please?

Not able to login

Hello,

I was not able to login using the following:
ols login
and
ols login -u <username> -p <password>

Got this message:
Error: Login failed. Check username and/or password.

Thank you!

Need to find a correct relationship between `folder_id` and `project_id`

If project name contains spaces, syncing from local to remote is not working, and there isn't any warning or error message. Syncing from remote to local is still working correctly.

Tested on a Linux Mint 20 desktop with Python 3.8.2.

For example, you can create a new project by choosing "Formal letter" on overleaf, and a project with name "Example letter using the newlfm LaTeX package" will be created. I can successfully sync this project to local, but cannot sync from local to remote (after main.tex is revised). Executing ols -l many times, I always get following same message.

➜  Example letter using the newlfm LaTeX package ols -l
Project queried successfully.
βœ…  Querying project
Project downloaded successfully.
βœ…  Downloading project
========================================

Notice: olignore file not exist, will sync all items. Continue? [y/N]: y
syncing all items

Syncing files from [local] to [remote]
========================================

[NEW] Following new file(s) created on [remote]

[UPDATE] Following file(s) updated on [remote]
	main.tex

[SYNC] Following file(s) being of latest version

[SKIP] Following file(s) version on [local] fall behind of [remote], but skipped as per your request

βœ…  Synced files from [local] to [remote]

If I create a project with name "test", then syncing from both directions works correctly.

Thanks!

Doesn't update the remote

ols claims to have updated the remote, but when checking on the website, nothing has changed.

Let me know what further debugging information I can provide.

Support Mac M1

Hi, thank you for this great project!

Is it possible to upgrade to PyQt6, because this may fix the issue that PyQt5 is not supported on Mac M1.

Thank you!

Login works, project query doesn't: "Error: Project could not be queried."

So I've been using this tool for a couple of weeks now to sync my thesis to overleaf. Worked like a charm, thanks for that!
Every once in a while, I would get the error mentioned in the title. Then I would remove the .olauth cookie and ols login newly. Then it would work again, usually for for a couple of days, or at least that day. Now, since yesterday, I'm facing the issue that I can login, but ols or ols -l always immediately gives the error

Error: Project could not be queried.

So I'm not able to sync at all...

Error when running `ols login`

Error when running ols login:

Traceback (most recent call last):
  File "/Users/hal/opt/anaconda3/bin/ols", line 5, in <module>
    from olsync.olsync import main
  File "/Users/hal/opt/anaconda3/lib/python3.8/site-packages/olsync/olsync.py", line 48, in <module>
    def main(ctx, local, remote, project_name, cookie_path, sync_path, olignore_path, verbose):
  File "/Users/hal/opt/anaconda3/lib/python3.8/site-packages/click/decorators.py", line 304, in decorator
    return option(*(param_decls or ("--version",)), **attrs)(f)
  File "/Users/hal/opt/anaconda3/lib/python3.8/site-packages/click/decorators.py", line 192, in decorator
    _param_memo(f, OptionClass(param_decls, **option_attrs))
  File "/Users/hal/opt/anaconda3/lib/python3.8/site-packages/click/core.py", line 1714, in __init__
    Parameter.__init__(self, param_decls, type=type, **attrs)
TypeError: __init__() got an unexpected keyword argument 'package_name'

Details :

macOS big sur
Python 3.8.3
pip 21.1.1

Folders are not created when local to remote.

When I sync files from local to remote, files located in capitulos and figuras folders are synced and created in the main project location in Overleaf, but the folders capitulos and figuras are not created.

But is not the case when remote to local, folders are created.

I used the command:

~$ ols -l

Output:

←[KProject queried successfully.?25h
←[K←[?25h←[32mβœ… ←[0m Querying project
←[KProject details queried successfully.h←[K
←[K←[?25h←[32mβœ… ←[0m Querying project details
←[KProject downloaded successfully.h←[K
←[K←[?25h←[32mβœ… ←[0m Downloading project
========================================

.olignore: using .olignore to filter items

Syncing files from [local] to [remote]
========================================

[NEW] Following new file(s) created on [remote]
        capitulos\antecedentes.tex
        capitulos\apendice.tex
        capitulos\conclusiones.tex
        capitulos\introduccion.tex
        capitulos\metodologia.tex
        capitulos\resultados.tex
        figuras\IPN.pdf
        figuras\IPN.svg
        figuras\pdf_file_icon.pdf
        figuras\UPIBI.pdf
        figuras\UPIBI.svg
        figuras\workinprogress.pdf
        figuras\workinprogress.svg

[UPDATE] Following file(s) updated on [remote]

[SYNC] Following file(s) are up to date

[SKIP] Following file(s) on [local] have not been synced to [remote]

βœ…  Synced files from [local] to [remote]

In Overleaf page, there are not folders:
Captura de pantalla 2022-07-30 180011

Is there an option to create/sync folders in overleaf when local to remote?

How can I solve it?

Thanks

'NoneType' object has no attribute 'get'

when trying to run ols list i get the following response:

πŸ’₯  Querying all projects
Error: Querying all projects failed. Please try again.

with verbose logging i get this traceback additionally

Traceback (most recent call last):
  File "/home/emil/.local/lib/python3.10/site-packages/olsync/olsync.py", line 348, in execute_action
    success = action()
  File "/home/emil/.local/lib/python3.10/site-packages/olsync/olsync.py", line 175, in <lambda>
    lambda: overleaf_client.get_project(project_name),
  File "/home/emil/.local/lib/python3.10/site-packages/olsync/olclient.py", line 104, in get_project
    BeautifulSoup(projects_page.content, 'html.parser').find('meta', {'name': 'ol-projects'}).get('content'))
AttributeError: 'NoneType' object has no attribute 'get'

i reinstalled all python dependencies and qt6-webengine and the problem still persists

Stopped working last week

Hi everyone,

Last week sync stopped working. Tried login again and everything goes fine but then when pulling from remote it gives an error. Tried with several projects and the same happens:

Persisted Overleaf cookie already exist. Do you want to override it? [y/N]: y
Login successful. Cookie persisted as `.olauth`. You may now sync your project.
βœ…  Login
Project queried successfully.
βœ…  Querying project
πŸ’₯  Querying project details
Error: Project details could not be queried.

TypeError: __init__() got an unexpected keyword argument 'package_name'

I got the following error when trying the command ols:

Traceback (most recent call last):
  File "~/.local/bin/ols", line 5, in <module>
    from olsync.olsync import main
  File "~/.local/lib/python3.8/site-packages/olsync/olsync.py", line 48, in <module>
    def main(ctx, local, remote, project_name, cookie_path, sync_path, olignore_path, verbose):
  File "/usr/local/lib/python3.8/dist-packages/click/decorators.py", line 304, in decorator
    return option(*(param_decls or ("--version",)), **attrs)(f)
  File "/usr/local/lib/python3.8/dist-packages/click/decorators.py", line 192, in decorator
    _param_memo(f, OptionClass(param_decls, **option_attrs))
  File "/usr/local/lib/python3.8/dist-packages/click/core.py", line 1714, in __init__
    Parameter.__init__(self, param_decls, type=type, **attrs)
TypeError: __init__() got an unexpected keyword argument 'package_name'

I use Python 3.8.10 and overleaf-sync latest version at this date, i.e. version 1.1.5.

olignore design is impractical for a single-file syncing

Hi. let me give a feedback regarding the olignore-related logic. Basically, I wanted to sync only a single file from the remote Overleaf project and I found the current design impractical for this particular task. In particular:

  1. olignore is not checked during the remote->local sync, so I get the whole project instead of a single file
  2. The syntax doesn't allow me to ignore "all except one", so I had to find -type f . | grep -v file.tex > .olignore
  3. Even after this I found that olignore doesn't understand that ./bla and bla mean the same thing. One probably needs to normalize the file names before doing the comparison. I had to remove ./ prefixes to make it barely do the job I needed.

`Error: Project could not be queried.`

I've been getting this error recently with overleaf-sync 1.1.5, possibly overleaf has changed up their site a bit?

I suggest that instead of querying for the project every time, we can give the option to manually specify or cache the overleaf project id; this would help avoid project querying failures

FYI: Free overleaf account can use 'git'

Under the sync/git tab, overleaf provides a git url to pull/push to the project.

Example:

git clone https://git.overleaf.com/__ID__ myproject
git add readme.md
git push

it behaves exactly like git.

no olclient?

ols on a repo that functioned a few months ago now yields:

Traceback (most recent call last):
  File "/home/boyan/miniconda3/envs/python39/lib/python3.9/site-packages/olsync/olsync.py", line 26, in <module>
    import olsync.olbrowserlogin as olbrowserlogin
  File "/home/boyan/miniconda3/envs/python39/lib/python3.9/site-packages/olsync/olbrowserlogin.py", line 14, in <module>
    from PyQt5.QtWebEngineWidgets import *
ImportError: /usr/lib/x86_64-linux-gnu/libfontconfig.so.1: undefined symbol: uuid_generate_sha1, version UUID_2.31

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/home/boyan/miniconda3/envs/python39/bin/ols", line 5, in <module>
    from olsync.olsync import main
  File "/home/boyan/miniconda3/envs/python39/lib/python3.9/site-packages/olsync/olsync.py", line 29, in <module>
    from olclient import OverleafClient
ModuleNotFoundError: No module named 'olclient'
make: *** [makefile:18: sync] Error 1

This is after I do a fresh pip3 install. Anybody else see this?

ols login fails on windows for v1.2.0

After I updated to 1.2.0, I got this when I try to run ols login:

  Plugin uses incompatible Qt library (5.12.0) [release]
qt.core.plugin.loader: In C:/Users/dell/anaconda3/Library/plugins/platforms/qminimal.dll:
  Plugin uses incompatible Qt library (5.12.0) [release]
qt.core.plugin.loader: In C:/Users/dell/anaconda3/Library/plugins/platforms/qoffscreen.dll:
  Plugin uses incompatible Qt library (5.12.0) [release]
qt.core.plugin.loader: In C:/Users/dell/anaconda3/Library/plugins/platforms/qwebgl.dll:
  Plugin uses incompatible Qt library (5.12.0) [release]
qt.core.plugin.loader: In C:/Users/dell/anaconda3/Library/plugins/platforms/qwindows.dll:
  Plugin uses incompatible Qt library (5.12.0) [release]
qt.qpa.plugin: Could not find the Qt platform plugin "windows" in ""
This application failed to start because no Qt platform plugin could be initialized. Reinstalling the application may fix this problem.

Login window keeps blank

When running

ols login --path /path/to/file

a window is open. However, it just stays blank and nothing happens. I am using Manjaro i3. After a while I get the following output:

β § Login[1011:1027:0518/234710.240508:ERROR:quic_idle_network_detector.cc(102)] SetAlarm called after stopped

β ΄ Loginlibpng warning: iCCP: known incorrect sRGB profile
libpng warning: iCCP: known incorrect sRGB profile

β Ή Login

Authenticate cookie stop working 4 or 5 days after login

After login a cookie is stored. And it works fine.
But for 4 or 5 days later, I can not query my project by that cookie and I need to re-run ols login to generate a new cookie file.
Is this a bug from ols or just an expiration of overleaf cookie set by overleaf server?

Error: Project details could not be queried.

I can obtain the project list with ols list, but I got an error when I do ols -l or ols -r to sync files.

Project queried successfully.
βœ… Querying project
πŸ’₯ Querying project details
Error: Project details could not be queried.

unable login

Dear Sir,
I am trying to use overleaf-sync, and I am trying to login to overleaf, but it does not work
I created a project name blabla on overleaf, and then I created a folder name blabla on my home directory.
Then I run: ols login
username:
password:
then it informs "Error: Login failed. Check username and/or password."
I am using python3, ubuntu 20.4
overleaf-sync 1.1.3
Could you please show me how to fix my issue.
Thanks so much
Liem

Cannot do any queries

I am not able to query all projects (list, download, sync). Login did work.

I am using Windows 11 and Python 3.10.5

grafik

Do you have an idea?

sub-directory files syncing

It seems that currently the package does not support syncing for sub-directory files yet.
For example, if I have a projct like this:
project-root
|-- sections
| |--sec1.tex
| |--sec2.tex
|--main.tex
|--style.sty

Only main.tex and style.sty will be synced.

Clarify how `.olignore` works

So I setup my .olignore like I would a .gitignore, but I noticed that it wasn't working the same. For example my .olignore just had the path out in it, but this didn't result in any of the out/foo.aux files being ignored.

So, having a look at the source code, I found:

keep_list = [f for f in files if not any(
fnmatch.fnmatch(f, ignore) for ignore in ignore_pattern)]

So it uses fnmatch patterns, which aren't the same as .gitignore patterns. Any future users note that you will have to use globs like out/* to match directories instead of just out.

I think it would be good if this could be updated in the docs and also the CLI help.

Sync doesn't keep local folder structure

Hey :)

When I sync my local project, which contains multiple subfolders with .tex files, all files are added to the root directory of the Overleaf project and no subfolders are created.

Is there an option that I am missing?

Thanks for your efforts!

.olignore not work for folders

.olignore not work for folders as .gitignore
For example, you have a folder test with some file in it.
Then you add test to .olignore, ols -l command will also upload the folder test and the files in it.

Not working on Community Edition

Is it known why it is not working with the self-hosted community edition? I edited the URLs and it keeps on failing trying to login when the login actually succeds.

Can't download projects

Hi,

I cannot download any of my projects. I have tried to drill a bit by running a minimal environment from the command line; overleaf_client.all_projects() works as expected, and so does overleaf_client.get_project('project_name').

overleaf_client.download_project('project_name') doesn't work as expected. The error in the page returned reads "Sorry, we can't find the page you are looking for".

It seems like the script is hitting a re-captcha.

It is worth mentioning I have also seen an issue somehow similar to #1 ; I cannot login passing the command line options, but I can log-in using ols login and then passing the credentials.

Any ideas?

Thanks in advance,

Andres

Error: Login failed. Please try again (PySide6 related issue)

Hi,

I just installed the olsync package, on Ubuntu 18.04. I get a login error when trying to run ols login, with no browser showing up.

Looking in detail, I get the following traceback :

LoginTraceback (most recent call last): File "/home/benoit/Downloads/overleaf-sync-plm-master/olsync/olsync.py", line 348, in execute_action success = action() File "/home/benoit/Downloads/overleaf-sync-plm-master/olsync/olsync.py", line 130, in <lambda> execute_action(lambda: login_handler(cookie_path), "Login", File "/home/benoit/Downloads/overleaf-sync-plm-master/olsync/olsync.py", line 207, in login_handler store = olbrowserlogin.login() File "/home/benoit/Downloads/overleaf-sync-plm-master/olsync/olbrowserlogin.py", line 100, in login from PySide6.QtCore import QLoggingCategory ImportError: cannot import name 'QLoggingCategory' from 'PySide6.QtCore' (/home/benoit/.local/lib/python3.8/site-packages/PySide6/QtCore.abi3.so)

I'm using a fork with a slight variation for logging to a community instance of overleaf and not on their own servers, but that doesn't change the PySide6 part. Any idea how to solve this error ? I don't find anything online with this import error ...

Thanks a lot

encounter error after update to version 1.1.5

Hi all,

After install the newest version, i.e., version 1.1.5, when run ols --version, I encounter the following error:

Traceback (most recent call last):
  File "/home/jw-ub-pc/.local/bin/ols", line 5, in <module>
    from olsync.olsync import main
  File "/home/jw-ub-pc/.local/lib/python3.8/site-packages/olsync/olsync.py", line 48, in <module>
    def main(ctx, local, remote, project_name, cookie_path, sync_path, olignore_path, verbose):
  File "/usr/lib/python3/dist-packages/click/decorators.py", line 282, in decorator
    return option(*(param_decls or ('--version',)), **attrs)(f)
  File "/usr/lib/python3/dist-packages/click/decorators.py", line 173, in decorator
    _param_memo(f, OptionClass(param_decls, **option_attrs))
  File "/usr/lib/python3/dist-packages/click/core.py", line 1547, in __init__
    Parameter.__init__(self, param_decls, type=type, **attrs)
TypeError: __init__() got an unexpected keyword argument 'package_name'

Similarly error also occurs on Mac, how to fix this?

Best,
JW

ols: no description file specified

Hi,
I get the following error "ols: no description file specified" on running the ols login [--path] command. Can you help me resolve this issue. What should be the "path" given here?

Sync not working from [local] to [remote]

Running ols on a M2 Mac with a terminal Python environment and running into a problem where changes made to my project locally aren't updated on the site when running ols -l after applying the changes in #66 to fix the GCLB cookies error.

Remote to local syncing works as it should, but when trying it the other way around I'm unable to both update or delete older files and create newer ones, only creating missing folders and subfolders, but without bringing over any of their contents.

Also, files actually do get deleted from the remote version when stated.

I have an .olignore file set up to ignore the output file and the environment folder, which is created here since I'm running the terminal from the project folder itself, but deleting it doesn't solve the problem.

I do not get any errors, these are the messages I get when running ols -l -v:

Project queried successfully.
βœ…  Querying project
Project details queried successfully.
βœ…  Querying project details
Project downloaded successfully.
βœ…  Downloading project
========================================

.olignore: using .olignore to filter items
========================================

.olignore: using .olignore to filter items
========================================

.olignore: using .olignore to filter items

Syncing files from [local] to [remote]
========================================

-> Warning: file <Test file remote.tex> does not exist on [local] anymore (but it still exists on [remote]).
Should the file be [d]eleted, [r]estored or [i]gnored? (d, r, i) [i]: d

[NEW] Following new file(s) created on [remote]
	Test folder/Test file 2.pdf
	Test folder/Test subfolder/Test file 3.pdf
	Test file 1.pdf

[NEW] Following new file(s) created on [local]

[UPDATE] Following file(s) updated on [remote]
	main.tex

[DELETE] Following file(s) deleted on [remote]
	Test file remote.tex # Actually gets deleted

[SYNC] Following file(s) are up to date

[SKIP] Following file(s) on [local] have not been synced to [remote]

[SKIP] Following file(s) on [remote] have not been synced to [local]

βœ…  Synced files from [local] to [remote]

TypeError: __init__() got an unexpected keyword argument 'package_name'

After updating to new version 1.1.5 and running ols the following error is raised:

$ ols
Traceback (most recent call last):
  File "/usr/local/bin/ols", line 5, in <module>
    from olsync.olsync import main
  File "/usr/local/lib/python3.8/dist-packages/olsync/olsync.py", line 48, in <module>
    def main(ctx, local, remote, project_name, cookie_path, sync_path, olignore_path, verbose):
  File "/usr/lib/python3/dist-packages/click/decorators.py", line 282, in decorator
    return option(*(param_decls or ('--version',)), **attrs)(f)
  File "/usr/lib/python3/dist-packages/click/decorators.py", line 173, in decorator
    _param_memo(f, OptionClass(param_decls, **option_attrs))
  File "/usr/lib/python3/dist-packages/click/core.py", line 1547, in __init__
    Parameter.__init__(self, param_decls, type=type, **attrs)
TypeError: __init__() got an unexpected keyword argument 'package_name'

Python version: 3.8.6
OS: Ubuntu 20.04.1 LTS

Can't upload file in subfolder

When the file is in subfolder, it will be uploaded into overleaf's root folder. I think the bug is caused in olsync.olclient.OverleafClient#upload_file, but I can't get subfolder id through websocket(I tried it with websocket-client but failed). Could you help me? Also, when a subsubfold which is in subfolder, it also can't upload in a correct place.

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.