dapper-sqls 0.9.2__py3-none-any.whl → 0.9.4__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
dapper_sqls/config.py CHANGED
@@ -1,6 +1,6 @@
1
1
  # -*- coding: latin -*-
2
2
  from .models import ConnectionStringData
3
- import winreg
3
+ import sys
4
4
 
5
5
  class Config(object):
6
6
  def __init__(self, server: str, database: str, username: str, password: str, sql_version: int = None, api_environment=False, default_attempts=1, default_wait_timeout=2):
@@ -18,7 +18,7 @@ class Config(object):
18
18
  @api_environment.setter
19
19
  def api_environment(self, value):
20
20
  if not isinstance(value, bool):
21
- raise ValueError("O valor atribu�do a api_environment deve ser do tipo booleano")
21
+ raise ValueError("The value assigned to api_environment must be of type boolean")
22
22
  self._api_environment = value
23
23
 
24
24
  @property
@@ -28,7 +28,7 @@ class Config(object):
28
28
  @default_attempts.setter
29
29
  def default_attempts(self, value):
30
30
  if not isinstance(value, int):
31
- raise ValueError("O valor atribu�do a default_attempts deve ser do tipo inteiro")
31
+ raise ValueError("The value assigned to default_attempts must be of type integer")
32
32
  self._default_attempts = value
33
33
 
34
34
  @property
@@ -38,7 +38,7 @@ class Config(object):
38
38
  @default_wait_timeout.setter
39
39
  def default_wait_timeout(self, value):
40
40
  if not isinstance(value, int):
41
- raise ValueError("O valor atribu�do a default_wait_timeout deve ser do tipo inteiro")
41
+ raise ValueError("The value assigned to default_wait_timeout must be of type integer")
42
42
  self._default_wait_timeout = value
43
43
 
44
44
  @property
@@ -48,7 +48,7 @@ class Config(object):
48
48
  @connectionStringDataQuery.setter
49
49
  def connectionStringDataQuery(self, value):
50
50
  if not isinstance(value, ConnectionStringData):
51
- raise ValueError("O valor atribu�do a connectionStringDataQuery deve ser do tipo ConnectionStringData")
51
+ raise ValueError("The value assigned to connectionStringDataQuery must be of type ConnectionStringData")
52
52
  self._connectionStringDataQuery = value
53
53
 
54
54
  @property
@@ -58,7 +58,7 @@ class Config(object):
58
58
  @connectionStringDataStored.setter
59
59
  def connectionStringDataStored(self, value):
60
60
  if not isinstance(value, ConnectionStringData):
61
- raise ValueError("O valor atribu�do a connectionStringDataStored deve ser do tipo ConnectionStringData")
61
+ raise ValueError("The value assigned to connectionStringDataStored must be of type ConnectionStringData")
62
62
  self._connectionStringDataStored = value
63
63
 
64
64
  @property
@@ -68,41 +68,48 @@ class Config(object):
68
68
  @sql_version.setter
69
69
  def sql_version(self, value):
70
70
  if not isinstance(value, int) and value is not None:
71
- raise ValueError("O valor atribu�do a sql_version deve ser do tipo inteiro ou None")
72
- self._sql_version = value
71
+ raise ValueError("The value assigned to sql_version must be of type integer or None")
73
72
 
74
73
  @staticmethod
75
74
  def get_all_odbc_driver_versions():
76
75
  driver_versions = []
77
- try:
78
- # Abrir a chave onde as informa��es sobre os drivers ODBC est�o armazenadas
79
- key_path = r"SOFTWARE\ODBC\ODBCINST.INI"
80
- key = winreg.OpenKey(winreg.HKEY_LOCAL_MACHINE, key_path)
81
-
82
- # Iterar sobre as subchaves para encontrar os drivers espec�ficos
83
- i = 0
84
- while True:
85
- try:
86
- subkey_name = winreg.EnumKey(key, i)
87
- subkey = winreg.OpenKey(key, subkey_name)
88
-
89
- # Verificar se a subchave cont�m o valor 'Driver'
76
+
77
+ # Verificar se o sistema é Windows e o módulo winreg está disponível
78
+ if sys.platform == "win32":
79
+ try:
80
+ import winreg # Importar o módulo winreg se estiver disponível
81
+
82
+ # Abrir a chave onde as informações sobre os drivers ODBC estão armazenadas
83
+ key_path = r"SOFTWARE\ODBC\ODBCINST.INI"
84
+ key = winreg.OpenKey(winreg.HKEY_LOCAL_MACHINE, key_path)
85
+
86
+ # Iterar sobre as subchaves para encontrar os drivers específicos
87
+ i = 0
88
+ while True:
90
89
  try:
91
- driver_name, _ = winreg.QueryValueEx(subkey, "Driver")
92
- if subkey_name.startswith('ODBC Driver'):
93
- driver_versions.append(subkey_name)
94
-
95
- except FileNotFoundError:
96
- pass # A subchave n�o possui a entrada 'Driver'
90
+ subkey_name = winreg.EnumKey(key, i)
91
+ subkey = winreg.OpenKey(key, subkey_name)
92
+
93
+ # Verificar se a subchave contém o valor 'Driver'
94
+ try:
95
+ driver_name, _ = winreg.QueryValueEx(subkey, "Driver")
96
+ if subkey_name.startswith('ODBC Driver'):
97
+ driver_versions.append(subkey_name)
98
+
99
+ except FileNotFoundError:
100
+ pass # A subchave não possui a entrada 'Driver'
101
+
102
+ i += 1
103
+ except OSError:
104
+ break
97
105
 
98
- i += 1
99
- except OSError:
100
- break
106
+ except Exception as e:
107
+ print(f"Erro ao acessar o registro: {e}")
108
+ else:
109
+ print("A funcionalidade de obtenção de versões de drivers ODBC não é suportada neste sistema operacional.")
101
110
 
102
- except Exception as e:
103
- print(f"Erro ao acessar o registro: {e}")
111
+ return sorted(driver_versions, key=lambda x: int(x.split()[-4]), reverse=True) if driver_versions else []
104
112
 
105
- return sorted(driver_versions, key=lambda x: int(x.split()[-4]), reverse=True)
106
113
 
107
114
 
108
115
 
dapper_sqls/parser.py ADDED
File without changes
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: dapper-sqls
3
- Version: 0.9.2
3
+ Version: 0.9.4
4
4
  Summary: UNKNOWN
5
5
  Home-page: UNKNOWN
6
6
  Author: Samuel Semedo
@@ -1,7 +1,8 @@
1
1
  dapper_sqls/__init__.py,sha256=KzUmxAhkQiQIu7Oa1yRtvRhCbsxg29aNa-MszPL6PrY,207
2
2
  dapper_sqls/_types.py,sha256=GM_qDsjKGRSFC0NsU5hkqLKH-ydVKJ-1TgEkxQzi4Hw,181
3
- dapper_sqls/config.py,sha256=FAI7wHU4mnPhy1uWBJ555HObgwXa9ADhsQ3WyTkXrhs,4216
3
+ dapper_sqls/config.py,sha256=z370PREmTu8dpZV4Fm6ZyWrQBDJeb0xMr28I-ZCGRIo,4633
4
4
  dapper_sqls/decorators.py,sha256=5mrabdIv4yZpwmN1XDjAhDXIU8ruoxww6b9X7fmRtE8,2655
5
+ dapper_sqls/parser.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
5
6
  dapper_sqls/utils.py,sha256=vRN-g-xify34YR08OSUF18L58jAjffoc0ixOJY0FcI4,3437
6
7
  dapper_sqls/async_dapper/__init__.py,sha256=lBXRyXMCaiwgcK5TCw5rg-niwFS4GcZVW5Q2enKcS-0,47
7
8
  dapper_sqls/async_dapper/async_dapper.py,sha256=fcJbscwJHCS4_cZJKwfzTJPkEaVBnSc7p8MpPEqD3-0,2462
@@ -24,7 +25,7 @@ dapper_sqls/models/result.py,sha256=4yCJmQEy87gPOi6sUdrXD3xtSWAbXeAX_uR2Ou6EYpg,
24
25
  dapper_sqls/sqlite/__init__.py,sha256=VifBg1-pubsrYs5jm3ZsgtIqM5JzeNDS2tdInAKvjwM,49
25
26
  dapper_sqls/sqlite/local_database.py,sha256=PpIokP09sfIT8JbwRVi0OxegrubDwOVXvajO4lU1U4g,9873
26
27
  dapper_sqls/sqlite/models.py,sha256=QwV771SexBq5j92Ls9bgcuR1ucDx9ARazj9JkhMTSB0,712
27
- dapper_sqls-0.9.2.dist-info/METADATA,sha256=Kij7y8GUvMEDKoPjnq8avQ69sjZ2cgPyCc2_NEq6myY,169
28
- dapper_sqls-0.9.2.dist-info/WHEEL,sha256=yQN5g4mg4AybRjkgi-9yy4iQEFibGQmlz78Pik5Or-A,92
29
- dapper_sqls-0.9.2.dist-info/top_level.txt,sha256=Pe1YqCPngnYbSVdhJyDrdFWHFCOqBvFW8WK7kTaIax4,12
30
- dapper_sqls-0.9.2.dist-info/RECORD,,
28
+ dapper_sqls-0.9.4.dist-info/METADATA,sha256=GiSDe3Q8FUbKVTfERixEIGm15gHkV6Pr-uBx-y_Zc1U,169
29
+ dapper_sqls-0.9.4.dist-info/WHEEL,sha256=yQN5g4mg4AybRjkgi-9yy4iQEFibGQmlz78Pik5Or-A,92
30
+ dapper_sqls-0.9.4.dist-info/top_level.txt,sha256=Pe1YqCPngnYbSVdhJyDrdFWHFCOqBvFW8WK7kTaIax4,12
31
+ dapper_sqls-0.9.4.dist-info/RECORD,,