Git Product home page Git Product logo

anonymousx86 / python-password Goto Github PK

View Code? Open in Web Editor NEW
28.0 28.0 8.0 414 KB

Desktop password manager with material design standard.

Home Page: https://anonymousx86.github.io/Python-Password/

License: GNU General Public License v3.0

Python 100.00%
crypto cryptography database desktop-app desktop-application local-database material-design password password-manager passwords-hash program python python3 sqlite3

python-password's People

Contributors

anonymousx86 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

Watchers

 avatar  avatar

python-password's Issues

Simpler header() function

The header() function could be shortened to this:

dashes = '-' * (len(Program.name) + len(Program.version) + 10) + '\n'
prog_info = f'+++ {Program.name} v{Program.version} +++\n'
h_text = dashes + prog_info + dashes
return h_text

This makes use of string repetition (*) instead of using loops.

[BUG]

Traceback (most recent call last):
File "C:\Users\Admin\Downloads\Python-Password-master\Python-Password-master\python_password\PyManager.py", line 21, in
from python_password.exceptions.validation import *
ModuleNotFoundError: No module named 'python_password'

[BUG] Hard to remove passwords with special characters in aliases

Description of the bug
It is possible that the alias of the password has some weird characters that makes the password hard to remove from the database.

To Reproduce
Steps to reproduce the behavior:

  1. Create a new entry with an alias like a tab at the end.
  2. The tab is displayed as a crossed box. And you may not remember which character it is later on.

Expected behavior
I think you should make an extra safety step and check that passwords are only a-z, A-Z and 0-9 characters or something like that, to make the passwords easy to remove.

Screenshots
bug

Version
v0.2.2

Use context managers instead of manaing resources

Whenever you find yourself manually handling resources you should first think 'Is there a context manager for this?'.

Context managers handle the gathering and releasing of resources for you.
This link explain them fairly well: https://jeffknupp.com/blog/2016/03/07/python-with-context-managers/

There are a few places you have used a context manager within the script, which is great! However, there are some places you haven't used them and haven't closed the file!

You can also use a context manager for sqlite3 cursors too. These give the added benefit of automatically committing or rolling back transactions.
You can read about them here: https://docs.python.org/2/library/sqlite3.html#using-the-connection-as-a-context-manager

No Module named 'python_passsword'

When I run the program with the command python PyPassword.py, it gives an error saying No Module named python_password. I am using vscode, which shouldn't make a difference.

Steps to reproduce the behavior:

  1. Click on save and run.
  2. Or click on save and then put in the terminal, python PyPassword.py

I had expected to see the password manager.

Screenshots
image

Version
v'0.2.5'

sqlite3.OperationalError: no such table: passwords

 Traceback (most recent call last):
   File "PyPassword.py", line 673, in <module>
     PyPassword().run()
   File "D:\Alt. Program Files x64\Python\Python37\lib\site-packages\kivy-1.11.1-py3.7-win-amd64.egg\kivy\app.py", line 854, in run
     self.dispatch('on_start')
   File "kivy\_event.pyx", line 707, in kivy._event.EventDispatcher.dispatch
   File "PyPassword.py", line 104, in on_start
     self.update_passwords_list()
   File "PyPassword.py", line 517, in update_passwords_list
     self._fetch_passwords()
   File "PyPassword.py", line 476, in _fetch_passwords
     q = gel_all_passwords()
   File "D:\Alt. Program Files x64\Python\Python37\lib\site-packages\python_password-0.2.5-py3.7.egg\python_password\utils\database.py", line 59, in gel_all_passwords
     return query('SELECT `name`, `password` FROM `passwords`;')
   File "D:\Alt. Program Files x64\Python\Python37\lib\site-packages\python_password-0.2.5-py3.7.egg\python_password\utils\database.py", line 30, in query
     my_cursor.execute(q_input, q_args)
 sqlite3.OperationalError: no such table: passwords

Why am I facing this error? Any work-around for this?
Please look into the matter.

Hide passwords while typing

The library getpass that ships with python that can be used when asking a user to enter a password. This hides the characters that they type while entering the password.

To use it, first import the module and then replace and input() calls with getpass() instead. Like so:

from getpass import getpass
pswd = getpass('Password:')

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.