Coder Social home page Coder Social logo

lominus's Introduction

lominus-app-icon

Go Reference

image

Table of Contents

  1. About
  2. Features
  3. Getting Started
  4. Integrations
  5. Screenshots
  6. Contributing

About

Lominus is a tool written in Go to automatically sync Luminus and Canvas files onto your local storage for easy access to updated files. It runs on Windows, macOS and Linux.

No credentials, files, or any other form of information is uploaded to any servers. Everything is stored locally on your system. Credentials are only used for authentication.

Features

Lominus removes the hassle to download (or redownload) whenever files are uploaded (or updated). And many more!

  • Works with Canvas (New !)
  • Keeps files updated and organised
  • Automatic download of module files
  • Automatic update of module files when files are reuploaded
  • System notifications
  • System-based dark/light mode
  • System tray icon
  • Telegram integration
  • API

Getting Started

Installation

Unsigned standalone executables for Windows, macOS and Linux are available from releases.

Note: Please read through installation introduction for the respective operating systems below.

Windows

Tested on Windows 10 Home Version 10.0.19044 Build 19044

Your anti-virus software like Windows Defender may prompt that lominus.exe as a false positive. You may need to make an exception for it.

This occurs because the app is unsigned amongst other reasons regarding Go executables which you may find out more here. Signing it requires a valid certificate which is payable.

macOS

Tested on M1 MacBook Air 2020 macOS Monterey Version 12.1

You may receive the prompt

“Lominus” is damaged and can’t be opened. You should eject the disk image.

or

The app is from an unidentified developer.

This happens because the app is unsigned. Signing it requires a valid certificate which requires a valid Apple Developer Program membership.

To enable exception for this app

xattr -cr [filepath]

where [filepath] is the path to the .dmg file.

Linux

Tested on Ubuntu Focal 20.04.2 LTS and Arch

Download and extract the tarball

tar -xf [filename].tar.xz

Install the application

sudo make install

Building

Prerequisites

  1. Golang >= 1.18

  2. gcc

  3. gtk3 and libayatana-appindicator3-dev (Linux)

    • For Debian and Ubuntu, you may install these via

      sudo apt-get install gcc libgtk-3-dev libayatana-appindicator3-dev
    • If you are on Linux Mint, you will require libxapp-dev as well.

  4. libxxf86vm-dev might help if Lominus keeps crashing on startup

Build

  1. Ensure GOPATH is set in your system env

    export GOPATH=$HOME/go
  2. Install dependencies in the directory where you cloned

    go install
  3. Install fyne

    go install fyne.io/fyne/v2/cmd/fyne@latest
  4. Ensure that your system PATH contains $GOPATH/bin before building.

    export PATH=$GOPATH/bin:$PATH
    fyne package

API

Lominus can also be used as an API. Please visit documentations for more details. However, do note that the documentations are lacking after v2.0.0 update due to lack of time :(. This should be fixed in due time.

Example: Retrieving your modules

package main

import (
    "log"

    "github.com/beebeeoii/lominus/pkg/api"
    "github.com/beebeeoii/lominus/pkg/auth"
    "github.com/beebeeoii/lominus/pkg/constants"
)

func getLuminusModules() {
    jwtToken, jwtTokenErr := auth.RetrieveJwtToken(auth.LuminusCredentials{
        Username: "nusstu\\e0123456",
        Password: "password",
    }, false)

    if jwtTokenErr != nil {
        log.Fatalln(jwtTokenErr)
    }

    modulesReq, modReqErr := api.BuildModulesRequest(jwtToken, constants.Luminus)
    if modReqErr != nil {
        log.Fatalln(modReqErr)
    }

    modules, modulesErr := modulesReq.GetModules()
    if modulesErr != nil {
        log.Fatalln(modulesErr)
    }

    for _, module := range modules {
        log.Println(module.ModuleCode, module.Name)
    }
}

func getCanvasModules() {
    canvasToken := "your-canvas-token"

    modulesReq, modReqErr := api.BuildModulesRequest(canvasToken, constants.Canvas)
    if modReqErr != nil {
        log.Fatalln(modReqErr)
    }

    modules, modulesErr := modulesReq.GetModules()
    if modulesErr != nil {
        log.Fatalln(modulesErr)
    }

    for _, module := range modules {
        log.Println(module.ModuleCode, module.Name)
    }
}

Sample output

2021/12/09 12:51:49 CP1002 School of Computing Placement Test: Programming Methodology
2021/12/09 12:51:49 CS2100 Computer Organisation
2021/12/09 12:51:49 IDRES2021 Advancing Interdisciplinary Education in Singapore
2021/12/09 12:51:49 IS1103 Ethics in Computing
2021/12/09 12:51:49 MA2001 Linear Algebra I
2021/12/09 12:51:49 MA2002 Calculus
2021/12/09 12:51:49 SOCT101 SoC Teaching Workshop

Integrations

Telegram

Telegram can be used to receive notifications for things such as new grades releases.

Setting up

  1. Retrieve your bot token via BotFather.

  2. Retrieve your Telegram user ID. The simplest way is via UserInfoBot.

  3. Copy and paste the bot token and your Telegram user ID in Lominus, under the Integrations tab.

  4. Save and you should receive a test message from your bot.

Ensure that the bot is able to message you by dropping it a message.

Screenshots

Click here for more screenshots

Credentials Integrations Preferences
image image image
image image image

Contributing

Lominus is far from perfect. All contributions, regardless large or small, are highly encouraged as this would help to make Lominus better. Please submit an issue or fork this repo and submit a pull request if necessary.

FAQ

  1. I am unable to verify my Luminus login credentials.

    • Please ensure that you have trusted the SSL Certificate used by Luminus, especially on Unix systems.
  2. Will my annotated lecture notes be overwritten if there exists a newer version uploaded by the Professor?

    • Your annotated file will be renamed to [v1] XXX.XXX and the newer version will be downloaded.

lominus's People

Contributors

beebeeoii avatar chuakid avatar jcheez avatar kevinchua6 avatar russelldash332 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

Watchers

 avatar  avatar  avatar  avatar

lominus's Issues

Incorrect folder structure when module has multiple codes

Describe the bug
Modules that have more than 1 code like SP1541-E1541, ST2131-MA2216 end up creating an additional folder. So instead of SP1541-E1541\files you get SP1541\E1541\files

To Reproduce
I don't know how this bug can be reproduced without being a student of such a mod

Expected behavior
SP1541-E1541\files

Desktop (please complete the following information):

  • OS: Windows 10

Files in default Canvas Folders are not downloaded

Describe the bug
Files that are uploaded to Module folders on Canvas are not downloaded. Currently, only files uploaded to folders in modules on Canvas are uploaded.

Expected behavior
Files in the root Module folder should also be downloaded.

Additional context
Not sure how many modules are suffering from this bug, but one example is NUR3117A.

Sync error for folders with space at the end

Unable to download files due to spacing at the end of the Luminus folder.
image

From logfile:
[2022-09-20 17:17:01] ERROR - open C:\Users\user\Desktop\NUS\Lominus\MA1301\Test Seating Plan \Route to MPSH.pdf: The system cannot find the path specified. (D:/jiawei/projects/lominus/internal/cron/cron.go:github.com/beebeeoii/lominus/internal/cron.createJob.func1:231)

Create desired folder directly from Folder Dialog

Is your feature request related to a problem? Please describe.
Currently, the FolderDialog seems to lack the feature of creating a new folder to be selected. For example, if the directory /Users/me/ exists, but I want to select the folder /Users/me/folder which does not already exist, I would have to create the folder separately first before selecting it from the FolderDialog.

Describe the solution you'd like
Have a button in the Folder Dialog to directly create a new folder in the current directory.

Additional context
Directly related to issue fyne-io/fyne#3174 and pull request fyne-io/fyne#3178

Files from double nested folders being downloaded twice

Describe the bug
This bug is quite random and I am not sure what is happening as it appears to affect 2 of my modules. Files in doubly nested folders are being downloaded twice - once in the correct location (which is to be in the double nested folders), and another time in the main directory.

For eg, we have a file 1.txt in ../CS2040S/Lectures/Lecture 1/1.txt, 1.txt seems to be downloaded in both ../CS2040S/Lectures/Lecture 1 (which is the correct behaviour) and ../CS2040S/Lecture 1 (which is the wrong behaviour).

To Reproduce
Simply syncing. However, it should be noted that I did not encounter this issue previously. It only surfaced recently without any changes to Lominus and the folder structure for the module is exactly the same.

Additional context
logfile:

[2022-10-13 22:11:44] DEBUG - downloading - CS2040S/Lab7/1DayAsg6.pdf [0001-01-01 00:00:00 +0000 UTC vs 2022-10-13 10:13:43 +0000 UTC] (/home/jiawei/Documents/lominus/internal/cron/cron.go:github.com/beebeeoii/lominus/internal/cron.createJob.func1:224)
[2022-10-13 22:11:45] DEBUG - downloading - CS2040S/Lab7/Lab7.pdf [0001-01-01 00:00:00 +0000 UTC vs 2022-10-13 10:13:43 +0000 UTC] (/home/jiawei/Documents/lominus/internal/cron/cron.go:github.com/beebeeoii/lominus/internal/cron.createJob.func1:224)
[2022-10-13 22:11:46] DEBUG - downloading - CS2040S/Labs/Lab7/1DayAsg6.pdf [0001-01-01 00:00:00 +0000 UTC vs 2022-10-13 10:13:43 +0000 UTC] (/home/jiawei/Documents/lominus/internal/cron/cron.go:github.com/beebeeoii/lominus/internal/cron.createJob.func1:224)
[2022-10-13 22:11:47] DEBUG - downloading - CS2040S/Labs/Lab7/Lab7.pdf [0001-01-01 00:00:00 +0000 UTC vs 2022-10-13 10:13:43 +0000 UTC] (/home/jiawei/Documents/lominus/internal/cron/cron.go:github.com/beebeeoii/lominus/internal/cron.createJob.func1:224)

Unable to sync files on Canvas

Canvas token is valid, but unable to sync my files still
I will obtain this error:
ERROR - Post "https://vafs.nus.edu.sg/adfs/oauth2/authorize?response_type=code&client_id=E10493A3B1024F14BDC7D0D8B9F649E9-234390&state=V6E9kYSq3DDQ72fSZZYFzLNKFT9dz38vpoR93IL8&redirect_uri=https://luminus.nus.edu.sg/auth/callback&scope=&resource=sg_edu_nus_oauth&nonce=V6E9kYSq3DDQ72fSZZYFzLNKFT9dz38vpoR93IL8": http: ContentLength=50 with Body length 0 (D:/jiawei/projects/lominus/internal/cron/cron.go:github.com/beebeeoii/lominus/internal/cron.createJob.func1:127)

Luminus files not being downloaded

Describe the bug
Some Luminus modules like CS2105 have files uploaded but Lominus does not seem to download those files. The file structure of those modules' files is nested. For example, lecture pdf files in a folder called Lecture.

Expected behavior
Files to be downloaded.

Screenshots
File Structure;
image

image

Desktop (please complete the following information):

  • OS: macOS
  • Lominus: v2.0.2

Additional context
This is a very interesting and unique report by someone and the issue seems to only affect a very small subset of modules available on Luminus. As such, it is quite hard to debug and much more information is required to identify the root cause of the issue.

Files in nested folders downloaded but incorrect directory structure

Describe the bug
While #68 covers about folders on LumiNUS, this issue is for Canvas. One can download nested files on Canvas but they are not placed on the correct spot.

Screenshots
Locally
image
Expected directory structure
image

Desktop (please complete the following information):

  • OS: Windows
  • Browser: Chrome
  • Version 2.0.1

File keeps getting resynced

Chanced upon a case where a file kept getting resync even though the local file is already the newest version

Know that the program is currently downloading files

Is your feature request related to a problem? Please describe.
When I press sync, I often don't know if it is doing anything. Is it downloading? Has it finished downloading? Often it is hard to tell.

Describe the solution you'd like
Having a loading indicator showing what things are in the progress of being downloaded, what things have to be downloaded/have been downloaded etc would be a very nice to have.

Internal documentations

Many documentations are either left as TODO or may be outdated after v2.0.0 update due to lack of time :(

  • internal/app/auth/auth.go
  • internal/app/dir/dir.go
  • internal/app/integrations/telegram/telegram.go
  • internal/app/lock/lock.go
  • internal/app/pref/pref.go
  • internal/app/app.go
  • internal/constants/ui.go
  • internal/cron/cron.go
  • internal/file/file.go
  • internal/indexing/indexing.go
  • internal/log/logs.go
  • internal/lominus/lominus.go
  • internal/notifications/notifications.go
  • internal/ui/bundled.go
  • internal/ui/credentials.go
  • internal/ui/integrations.go
  • internal/ui/preferences.go
  • internal/ui/systray.go
  • internal/ui/ui.go

CLI for power users

Advantages:

  • Integration with scripts and other other complex tools such as crontab
  • Use minimal resources instead of acting as a daemon + GUI
  • Easier user testing of core features with CLI
  • Fail-safe in the event of GUI failure (e.g. due to Qt)

Describe the solution you'd like
Ideally, the CLI can be run statelessly with runtime parameters / environment variables / input files. Depending on the current architecture, it might be trivial to adapt existing interfaces to any of your favorite libraries here https://go.dev/solutions/clis

Additional context
This feature would be similar to fluminurs

Files not grouped together in File Explorer

Is your feature request related to a problem? Please describe.
Files of the same name are not grouped together in file explorer because the version name is appended to the start of the file name.
This makes it difficult to find the latest version of a particular file.

Describe the solution you'd like
Append the version number of the filename to back of the filename instead.
Then, the folder can be ordered by filename then by version number instead of the other way around.

Additional context
image

Not notified of "new" grades releases

This occurs when grades in gradebooks are "released" but hidden from students. When the grades are unhidden, the release date would already be earlier than the last sync date, hence such grades would not be sent via Telegram even though user has not been notified about them.

Whitelisting

Is your feature request related to a problem? Please describe.
Users may tend to annotate on their lecture notes. Having Lominus syncing at selected intervals may overwrite their lecture notes when a newer version is uploaded.

Describe the solution you'd like
Have some kind of whitelisting similar to how gitignore.

Files are overwritten when a newer version is uploaded

As per title.

This is not ideal as users might have made edits to the original local file and having them overwritten would wipe out their edits. This issue has been solved previously and it seems like the code is simply not called when downloading files.

it crash/quit unexpectedly

Describe the bug
A clear and concise description of what the bug is.

it crash/quit unexpectedly after sync is enabled

To Reproduce
Steps to reproduce the behavior:

  1. Go to '...'
  2. Click on '....'
  3. Scroll down to '....'
  4. See error

Expected behavior
A clear and concise description of what you expected to happen.

Screenshots
If applicable, add screenshots to help explain your problem.

Desktop (please complete the following information):

  • OS: [e.g. iOS]
  • Browser [e.g. chrome, safari]
  • Version [e.g. 22]

Smartphone (please complete the following information):

  • Device: [e.g. iPhone6]
  • OS: [e.g. iOS8.1]
  • Browser [e.g. stock browser, safari]
  • Version [e.g. 22]

Additional context
Add any other context about the problem here.

Lominus crashes upon sync

Describe the bug
App force quits and crashes upon sync attempts. A pretty difficult bug to reproduce as it occurs only for users with TurnItIn folders in Luminus files. Crashes are linked to absence of response validations.

"Choose folder" spawns invisible(?) window

Upon clicking "choose folder", no dialog is spawned and I am unable to select anywhere within the menu either. Since I can't choose a folder (e.g. conf file, env var), I am unable to sync with lominus.

Steps to reproduce the behavior:

  1. Open lominus
  2. Click Preferences > Choose folder
  3. (Nothing)

Expected behavior
Opens a folder dialog

Desktop:

  • OS: Manjaro KDE
  • Version 2.0.1

Additional context
Orthogonally, are you interested in supporting CLI? If you require help, I would love to contribute.

Better notifications with Telegram

Add possibility of choosing between desktop notification and telegram notification. Currently only grades are notified via Telegram.

Would be better to have updates of files notified via telegram as well if users choose to so that they can see which are the new files and followup on those (some may choose to print them etc).

Files in nested folders not downloaded.

image

image
)
image

image

This occurs when there are subfolders instead of files underneath the folder. The folder is not created and the files inside are not downloaded as well.

auto update/check for updates

Is your feature request related to a problem? Please describe.
Users would like to get the latest version of Lominus but it entails manual checking of this github repo. This would be a barrier for many to get the latest updates. Moreover, when hotfixes are pushed, users might not be getting the fixes because they do not know that there are updates.

Describe the solution you'd like
Implement an auto update or check for updates feature that would either:

  1. Automatically update the app for users
  2. Notify them that there is an update and they can proceed to the releases page to get the latest version

Describe alternatives you've considered

  1. Include a link in the application that directs them to the release page so they can just click on it and see if there are any updates on their own. This, however, would still require some manual checking.

Additional context
Helpful library that seems quite suitable for this feature request: selfupdate

Luminus Sync Error

Canvas sync works but Luminus sync always produces the message "Verification failed. Please check your credentials."

[2022-09-13 10:09:58] ERROR - EOF (/Users/jiawei/Documents/projects/lominus/internal/cron/cron.go:github.com/beebeeoii/lominus/internal/cron.createJob.func1:127)
[2022-09-13 10:10:02] DEBUG - verifying credentials (/Users/jiawei/Documents/projects/lominus/internal/ui/credentials.go:github.com/beebeeoii/lominus/internal/ui.getLuminusView.func1:107)
[2022-09-13 10:10:02] DEBUG - verfication failed (/Users/jiawei/Documents/projects/lominus/internal/ui/credentials.go:github.com/beebeeoii/lominus/internal/ui.getLuminusView.func1:111)

Timezone mismatch for file updated Telegram messages

Describe the bug
Telegram messages sent for file updates include a time at which the file was uploaded. This time however, is 8 hours earlier than what it should be because of timezone mismatch (we are in UTC +8 but the message sent did not take that into account).

Screenshots
File updated time shown on Canvas is 21:01
image

File updated time shown on Telegram Message is 13:01 (8 hours earlier)
image

Lominus attempts to get folders for modules that are not yet available

Some modules on Canvas can be seen via the HTTP response, but they are marked as access restricted. Folders and files for these modules should not be fetched. Attempts to fetch will result in the error log below.

[2022-07-30 15:58:22] ERROR - json: cannot unmarshal object into Go value of type []interfaces.CanvasFolderObject (/home/jiawei/Documents/projects/lominus/internal/cron/cron.go:github.com/beebeeoii/lominus/internal/cron.createJob.func1:188)

Launch app when system starts

Is your feature request related to a problem? Please describe.
When someone starts the computer system, e.g. boot or reboot, the app has to be launched manually.

Describe the solution you'd like
It would be good to have an option to automatically launch the app upon the system start.

Unable to sync certain folders

Describe the bug
Certain folders within a module cannot be synced

To Reproduce
Steps to reproduce the behavior:

  1. Sync for CS2102
  2. Only Folders 'Cases', 'course_image' synced
  3. Missing Folders 'Finals', 'Guide', 'Midterms', 'Slides', 'Tutorials'
    'Finals' and 'Midterms' Folder are locked and inaccessible on Canvas so non-issue

Expected behavior
'Guide', 'Slides', 'Tutorials' Folder should be able to sync

Screenshots
Canvas:
image
Synced by Lominus:
image
Logs:
`[2024-01-29 01:13:42] WARNING - json: cannot unmarshal object into Go value of type []interfaces.CanvasFileObject (C:/Program Files/lominus-development_290124/internal/cron/cron.go:github.com/beebeeoii/lominus/internal/cron.createJob.func1:162)

[2024-01-29 01:13:43] WARNING - json: cannot unmarshal object into Go value of type []interfaces.CanvasFileObject (C:/Program Files/lominus-development_290124/internal/cron/cron.go:github.com/beebeeoii/lominus/internal/cron.createJob.func1:162)

[2024-01-29 01:13:43] WARNING - json: cannot unmarshal object into Go value of type []interfaces.CanvasFileObject (C:/Program Files/lominus-development_290124/internal/cron/cron.go:github.com/beebeeoii/lominus/internal/cron.createJob.func1:162)`

Desktop (please complete the following information):

  • OS: Microsoft Windows 10 Home
  • Version: latest dev branch 290124, not working on v2.1.0 as well

Additional context
Issue might be from unsupported folder/file configurations on Canvas.
Observed within tutorials folder, tutorial 'T01.pdf' has a scheduled release configuration
image

Let me know if more clarifications needed! Thanks 👍

Lominus not closing on Mac

Lominus not closing on Mac when pressing ⌘+Q or trying to restart the system.

To Reproduce
Steps to reproduce the behavior:

  1. Open Lominus
  2. Press ⌘+Q to attempt to close Lominus. Alternatively, try restarting your system to see that Lominus doesn't close automatically.

Expected behavior
Lominus should close automatically when the system attempts to restart or when ⌘+Q is pressed.

Desktop (please complete the following information):

  • OS: MacOS Monterey (v12.4)

Additional context
The program closes when manually clicking on its menu bar icon and closing it from there, as well as when force quitting through the force quit window.

Package documentations

Many documentations are either left as TODO or may be outdated after v2.0.0 update due to lack of time :(

  • pkg/api/files.go
  • pkg/api/grades.go
  • pkg/api/modules.go
  • pkg/api/request.go
  • pkg/api/response.go
  • pkg/api/videos.go
  • pkg/auth/auth.go
  • pkg/auth/canvas.go
  • pkg/auth/luminus.go
  • pkg/constants/endpoints.go
  • pkg/constants/platforms.go
  • pkg/integrations/telegram/telegram.go
  • pkg/interfaces/File.go
  • pkg/interfaces/Folder.go
  • pkg/interfaces/Module.go
  • pkg/interfaces/Response.go
  • pkg/interfaces/Url.go

Canvas' default return maximum 10 items per request

Describe the bug
Requests that return multiple items will be paginated to 10 items by default. To retrieve more items, you can either append a ?per_page parameter or utilise the Link header to check if the next page exists and if it does, get the next page of items.

Currently, this wasn't taken into account and at max, 10 items are returned for requests that might actually return more than 10 items (for example files in a folder).

For ref: https://canvas.instructure.com/doc/api/file.pagination.html

Wrong semester's modules downloaded

Describe the bug
Only the previous sem's mods seem to be downloading instead of the next sem's mods. Is there a check for the course "term" that only downloads files from mods in a specific sem?

To Reproduce
I created a Y2S2 folder for the next sem and synced, Lominus pulled the 4 published mods from last sem and did not pull the 1 published mod for this sem that I had.

Expected behavior
Not sure what the intended functionality is, how does Lominus decide which mods to pull?

Screenshots
image
ignore DSA2313 that's manually created
image
HSI2001 folder is not pulled even though the module has files. I'm guessing HS1402S is not pulled because it has no files.

Desktop (please complete the following information):

  • OS: Windows 10

Sync keeps going for folders with dots in the end

Describe the bug
Similar to #88 but this time it keeps downloading instead of an error. This is because the folder created omits the dot at the back so it keeps assuming the files aren't there yet.

Logfile snapshot

[2022-09-21 11:37:38] DEBUG - downloading - EC1101E/Exam Instructions etc./EC1101E Midterm Exam Instructions.pdf [0001-01-01 00:00:00 +0000 UTC vs 2022-09-16 18:06:01.36 +0800 +08] (D:/jiawei/projects/lominus/internal/cron/cron.go:github.com/beebeeoii/lominus/internal/cron.createJob.func1:224)
[2022-09-21 11:37:38] INFO - job completed: 2022-09-21T11:37:38+08:00 (D:/jiawei/projects/lominus/internal/cron/cron.go:github.com/beebeeoii/lominus/internal/cron.createJob.func1:275)

OS
Windows 10

Choose File Directory: Use default file explorer for Windows

Is your feature request related to a problem? Please describe.
I feel that it is difficult to find the file location that I want because it's not the integrated one.
image
Also seems like it's not possible to enter a file directory that I have copied. Seems like we can't create new folders as well?

Describe the solution you'd like
It might be better to just use the default file explorer for Windows imo

Related: #53

Lominus is still running in the background notification

Describe the bug
Notification prompting that Lominus is still running in the background after clicking "Quit Lominus" from main window or "Quit" from systray on Windows.

To Reproduce
Steps to reproduce the behavior:

  1. Quit Lominus from main window or from systray on Windows
  2. Notification prompting that Lominus is still running shows up.

Expected behavior
Notification prompting that Lominus is still running should not show up.

Screenshots
image

Additional context
Seems like this bug is only affecting Windows.

Lominus downloads new copies of the same file every time it syncs

Every time lominus syncs it creates a new copy of existing files and name them with the prefix [Vx] where x is the copy number. I am on windows 10.

Additionally, there seems to be no limit to this as I've seen versions go up to 9 or 10, but as a bandaid I just delete the copies every time. Potentially dangerous as it seems to be taking up disk space limitlessly.

image

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.