IncludeCPP 3.7.24__tar.gz → 3.7.25__tar.gz

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.
Files changed (60) hide show
  1. {includecpp-3.7.24 → includecpp-3.7.25}/IncludeCPP.egg-info/PKG-INFO +1 -1
  2. {includecpp-3.7.24 → includecpp-3.7.25}/IncludeCPP.egg-info/SOURCES.txt +2 -0
  3. {includecpp-3.7.24 → includecpp-3.7.25}/PKG-INFO +1 -1
  4. {includecpp-3.7.24 → includecpp-3.7.25}/includecpp/__init__.py +1 -1
  5. includecpp-3.7.25/includecpp/vscode/cssl/extension.js +133 -0
  6. {includecpp-3.7.24 → includecpp-3.7.25}/includecpp/vscode/cssl/package.json +73 -4
  7. {includecpp-3.7.24 → includecpp-3.7.25}/pyproject.toml +2 -1
  8. {includecpp-3.7.24 → includecpp-3.7.25}/IncludeCPP.egg-info/dependency_links.txt +0 -0
  9. {includecpp-3.7.24 → includecpp-3.7.25}/IncludeCPP.egg-info/entry_points.txt +0 -0
  10. {includecpp-3.7.24 → includecpp-3.7.25}/IncludeCPP.egg-info/requires.txt +0 -0
  11. {includecpp-3.7.24 → includecpp-3.7.25}/IncludeCPP.egg-info/top_level.txt +0 -0
  12. {includecpp-3.7.24 → includecpp-3.7.25}/LICENSE +0 -0
  13. {includecpp-3.7.24 → includecpp-3.7.25}/MANIFEST.in +0 -0
  14. {includecpp-3.7.24 → includecpp-3.7.25}/README.md +0 -0
  15. {includecpp-3.7.24 → includecpp-3.7.25}/includecpp/__init__.pyi +0 -0
  16. {includecpp-3.7.24 → includecpp-3.7.25}/includecpp/__main__.py +0 -0
  17. {includecpp-3.7.24 → includecpp-3.7.25}/includecpp/cli/__init__.py +0 -0
  18. {includecpp-3.7.24 → includecpp-3.7.25}/includecpp/cli/commands.py +0 -0
  19. {includecpp-3.7.24 → includecpp-3.7.25}/includecpp/cli/config_parser.py +0 -0
  20. {includecpp-3.7.24 → includecpp-3.7.25}/includecpp/core/__init__.py +0 -0
  21. {includecpp-3.7.24 → includecpp-3.7.25}/includecpp/core/ai_integration.py +0 -0
  22. {includecpp-3.7.24 → includecpp-3.7.25}/includecpp/core/build_manager.py +0 -0
  23. {includecpp-3.7.24 → includecpp-3.7.25}/includecpp/core/cpp_api.py +0 -0
  24. {includecpp-3.7.24 → includecpp-3.7.25}/includecpp/core/cpp_api.pyi +0 -0
  25. {includecpp-3.7.24 → includecpp-3.7.25}/includecpp/core/cppy_converter.py +0 -0
  26. {includecpp-3.7.24 → includecpp-3.7.25}/includecpp/core/cssl/CSSL_DOCUMENTATION.md +0 -0
  27. {includecpp-3.7.24 → includecpp-3.7.25}/includecpp/core/cssl/__init__.py +0 -0
  28. {includecpp-3.7.24 → includecpp-3.7.25}/includecpp/core/cssl/cssl_builtins.py +0 -0
  29. {includecpp-3.7.24 → includecpp-3.7.25}/includecpp/core/cssl/cssl_builtins.pyi +0 -0
  30. {includecpp-3.7.24 → includecpp-3.7.25}/includecpp/core/cssl/cssl_events.py +0 -0
  31. {includecpp-3.7.24 → includecpp-3.7.25}/includecpp/core/cssl/cssl_modules.py +0 -0
  32. {includecpp-3.7.24 → includecpp-3.7.25}/includecpp/core/cssl/cssl_parser.py +0 -0
  33. {includecpp-3.7.24 → includecpp-3.7.25}/includecpp/core/cssl/cssl_runtime.py +0 -0
  34. {includecpp-3.7.24 → includecpp-3.7.25}/includecpp/core/cssl/cssl_syntax.py +0 -0
  35. {includecpp-3.7.24 → includecpp-3.7.25}/includecpp/core/cssl/cssl_types.py +0 -0
  36. {includecpp-3.7.24 → includecpp-3.7.25}/includecpp/core/cssl_bridge.py +0 -0
  37. {includecpp-3.7.24 → includecpp-3.7.25}/includecpp/core/cssl_bridge.pyi +0 -0
  38. {includecpp-3.7.24 → includecpp-3.7.25}/includecpp/core/error_catalog.py +0 -0
  39. {includecpp-3.7.24 → includecpp-3.7.25}/includecpp/core/error_formatter.py +0 -0
  40. {includecpp-3.7.24 → includecpp-3.7.25}/includecpp/core/exceptions.py +0 -0
  41. {includecpp-3.7.24 → includecpp-3.7.25}/includecpp/core/path_discovery.py +0 -0
  42. {includecpp-3.7.24 → includecpp-3.7.25}/includecpp/core/project_ui.py +0 -0
  43. {includecpp-3.7.24 → includecpp-3.7.25}/includecpp/core/settings_ui.py +0 -0
  44. {includecpp-3.7.24 → includecpp-3.7.25}/includecpp/generator/__init__.py +0 -0
  45. {includecpp-3.7.24 → includecpp-3.7.25}/includecpp/generator/parser.cpp +0 -0
  46. {includecpp-3.7.24 → includecpp-3.7.25}/includecpp/generator/parser.h +0 -0
  47. {includecpp-3.7.24 → includecpp-3.7.25}/includecpp/generator/type_resolver.cpp +0 -0
  48. {includecpp-3.7.24 → includecpp-3.7.25}/includecpp/generator/type_resolver.h +0 -0
  49. {includecpp-3.7.24 → includecpp-3.7.25}/includecpp/py.typed +0 -0
  50. {includecpp-3.7.24 → includecpp-3.7.25}/includecpp/templates/cpp.proj.template +0 -0
  51. {includecpp-3.7.24 → includecpp-3.7.25}/includecpp/vscode/__init__.py +0 -0
  52. {includecpp-3.7.24 → includecpp-3.7.25}/includecpp/vscode/cssl/__init__.py +0 -0
  53. {includecpp-3.7.24 → includecpp-3.7.25}/includecpp/vscode/cssl/images/cssl.png +0 -0
  54. {includecpp-3.7.24 → includecpp-3.7.25}/includecpp/vscode/cssl/images/cssl_pl.png +0 -0
  55. {includecpp-3.7.24 → includecpp-3.7.25}/includecpp/vscode/cssl/language-configuration.json +0 -0
  56. {includecpp-3.7.24 → includecpp-3.7.25}/includecpp/vscode/cssl/snippets/cssl.snippets.json +0 -0
  57. {includecpp-3.7.24 → includecpp-3.7.25}/includecpp/vscode/cssl/syntaxes/cssl.tmLanguage.json +0 -0
  58. {includecpp-3.7.24 → includecpp-3.7.25}/requirements.txt +0 -0
  59. {includecpp-3.7.24 → includecpp-3.7.25}/setup.cfg +0 -0
  60. {includecpp-3.7.24 → includecpp-3.7.25}/setup.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: IncludeCPP
3
- Version: 3.7.24
3
+ Version: 3.7.25
4
4
  Summary: Professional C++ Python bindings with type-generic templates, pystubs and native threading
5
5
  Home-page: https://github.com/liliassg/IncludeCPP
6
6
  Author: Lilias Hatterscheidt
@@ -43,6 +43,7 @@ setup.py
43
43
  ./includecpp/templates/cpp.proj.template
44
44
  ./includecpp/vscode/__init__.py
45
45
  ./includecpp/vscode/cssl/__init__.py
46
+ ./includecpp/vscode/cssl/extension.js
46
47
  ./includecpp/vscode/cssl/language-configuration.json
47
48
  ./includecpp/vscode/cssl/package.json
48
49
  ./includecpp/vscode/cssl/images/cssl.png
@@ -94,6 +95,7 @@ includecpp/generator/type_resolver.h
94
95
  includecpp/templates/cpp.proj.template
95
96
  includecpp/vscode/__init__.py
96
97
  includecpp/vscode/cssl/__init__.py
98
+ includecpp/vscode/cssl/extension.js
97
99
  includecpp/vscode/cssl/language-configuration.json
98
100
  includecpp/vscode/cssl/package.json
99
101
  includecpp/vscode/cssl/images/cssl.png
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: IncludeCPP
3
- Version: 3.7.24
3
+ Version: 3.7.25
4
4
  Summary: Professional C++ Python bindings with type-generic templates, pystubs and native threading
5
5
  Home-page: https://github.com/liliassg/IncludeCPP
6
6
  Author: Lilias Hatterscheidt
@@ -2,7 +2,7 @@ from .core.cpp_api import CppApi
2
2
  from .core import cssl_bridge as CSSL
3
3
  import warnings
4
4
 
5
- __version__ = "3.7.24"
5
+ __version__ = "3.7.25"
6
6
  __all__ = ["CppApi", "CSSL"]
7
7
 
8
8
  # Module-level cache for C++ modules
@@ -0,0 +1,133 @@
1
+ // CSSL Language Extension for VS Code
2
+ // Provides run functionality for .cssl files
3
+
4
+ const vscode = require('vscode');
5
+ const path = require('path');
6
+ const { spawn } = require('child_process');
7
+
8
+ let outputChannel;
9
+
10
+ function activate(context) {
11
+ // Create output channel for CSSL
12
+ outputChannel = vscode.window.createOutputChannel('CSSL');
13
+
14
+ // Register the run command
15
+ const runCommand = vscode.commands.registerCommand('cssl.runFile', async () => {
16
+ const editor = vscode.window.activeTextEditor;
17
+
18
+ if (!editor) {
19
+ vscode.window.showErrorMessage('No active editor found');
20
+ return;
21
+ }
22
+
23
+ const document = editor.document;
24
+ const filePath = document.fileName;
25
+ const ext = path.extname(filePath).toLowerCase();
26
+
27
+ // Only allow .cssl files (not .cssl-mod or .cssl-pl)
28
+ if (ext !== '.cssl') {
29
+ vscode.window.showWarningMessage('Only .cssl files can be executed. Modules (.cssl-mod) and Payloads (.cssl-pl) cannot be run directly.');
30
+ return;
31
+ }
32
+
33
+ // Save the file before running
34
+ if (document.isDirty) {
35
+ await document.save();
36
+ }
37
+
38
+ // Get configuration
39
+ const config = vscode.workspace.getConfiguration('cssl');
40
+ const pythonPath = config.get('pythonPath', 'python');
41
+ const showOutput = config.get('showOutput', true);
42
+
43
+ // Show output channel
44
+ if (showOutput) {
45
+ outputChannel.show(true);
46
+ }
47
+
48
+ outputChannel.clear();
49
+ outputChannel.appendLine(`[CSSL] Running: ${path.basename(filePath)}`);
50
+ outputChannel.appendLine(`[CSSL] Path: ${filePath}`);
51
+ outputChannel.appendLine('─'.repeat(50));
52
+
53
+ // Run the CSSL file using includecpp cssl run
54
+ const args = ['-m', 'includecpp', 'cssl', 'run', filePath];
55
+
56
+ const process = spawn(pythonPath, args, {
57
+ cwd: path.dirname(filePath),
58
+ env: { ...process.env }
59
+ });
60
+
61
+ let hasError = false;
62
+
63
+ process.stdout.on('data', (data) => {
64
+ outputChannel.append(data.toString());
65
+ });
66
+
67
+ process.stderr.on('data', (data) => {
68
+ hasError = true;
69
+ outputChannel.append(data.toString());
70
+ });
71
+
72
+ process.on('close', (code) => {
73
+ outputChannel.appendLine('');
74
+ outputChannel.appendLine('─'.repeat(50));
75
+ if (code === 0) {
76
+ outputChannel.appendLine(`[CSSL] Finished successfully`);
77
+ } else {
78
+ outputChannel.appendLine(`[CSSL] Exited with code: ${code}`);
79
+ }
80
+ });
81
+
82
+ process.on('error', (err) => {
83
+ outputChannel.appendLine(`[CSSL] Error: ${err.message}`);
84
+ vscode.window.showErrorMessage(`Failed to run CSSL: ${err.message}. Make sure IncludeCPP is installed (pip install includecpp).`);
85
+ });
86
+ });
87
+
88
+ context.subscriptions.push(runCommand);
89
+ context.subscriptions.push(outputChannel);
90
+
91
+ // Register task provider for CSSL
92
+ const taskProvider = vscode.tasks.registerTaskProvider('cssl', {
93
+ provideTasks: () => {
94
+ return [];
95
+ },
96
+ resolveTask: (task) => {
97
+ if (task.definition.type === 'cssl') {
98
+ const config = vscode.workspace.getConfiguration('cssl');
99
+ const pythonPath = config.get('pythonPath', 'python');
100
+ const file = task.definition.file;
101
+
102
+ const execution = new vscode.ShellExecution(
103
+ `${pythonPath} -m includecpp cssl run "${file}"`
104
+ );
105
+
106
+ return new vscode.Task(
107
+ task.definition,
108
+ vscode.TaskScope.Workspace,
109
+ 'Run CSSL',
110
+ 'cssl',
111
+ execution,
112
+ []
113
+ );
114
+ }
115
+ return undefined;
116
+ }
117
+ });
118
+
119
+ context.subscriptions.push(taskProvider);
120
+
121
+ console.log('CSSL extension activated');
122
+ }
123
+
124
+ function deactivate() {
125
+ if (outputChannel) {
126
+ outputChannel.dispose();
127
+ }
128
+ }
129
+
130
+ module.exports = {
131
+ activate,
132
+ deactivate
133
+ };
@@ -2,7 +2,7 @@
2
2
  "name": "cssl",
3
3
  "displayName": "CSSL Language",
4
4
  "description": "Professional syntax highlighting, snippets, and language support for CSSL scripts (.cssl, .cssl-pl, .cssl-mod)",
5
- "version": "1.2.3",
5
+ "version": "1.3.0",
6
6
  "publisher": "IncludeCPP",
7
7
  "icon": "images/cssl.png",
8
8
  "engines": {
@@ -10,15 +10,21 @@
10
10
  },
11
11
  "categories": [
12
12
  "Programming Languages",
13
- "Snippets"
13
+ "Snippets",
14
+ "Debuggers"
14
15
  ],
15
16
  "keywords": [
16
17
  "cssl",
17
18
  "script",
18
19
  "includecpp",
19
20
  "c++",
20
- "python"
21
+ "python",
22
+ "run"
21
23
  ],
24
+ "activationEvents": [
25
+ "onLanguage:cssl"
26
+ ],
27
+ "main": "./extension.js",
22
28
  "contributes": {
23
29
  "languages": [
24
30
  {
@@ -82,6 +88,69 @@
82
88
  "language": "cssl-pl",
83
89
  "path": "./snippets/cssl.snippets.json"
84
90
  }
85
- ]
91
+ ],
92
+ "commands": [
93
+ {
94
+ "command": "cssl.runFile",
95
+ "title": "Run CSSL File",
96
+ "icon": "$(play)",
97
+ "enablement": "resourceExtname == .cssl"
98
+ }
99
+ ],
100
+ "menus": {
101
+ "editor/title/run": [
102
+ {
103
+ "command": "cssl.runFile",
104
+ "when": "resourceExtname == .cssl",
105
+ "group": "navigation"
106
+ }
107
+ ],
108
+ "editor/context": [
109
+ {
110
+ "command": "cssl.runFile",
111
+ "when": "resourceExtname == .cssl",
112
+ "group": "1_run"
113
+ }
114
+ ]
115
+ },
116
+ "keybindings": [
117
+ {
118
+ "command": "cssl.runFile",
119
+ "key": "f5",
120
+ "when": "resourceExtname == .cssl && !inDebugMode"
121
+ },
122
+ {
123
+ "command": "cssl.runFile",
124
+ "key": "ctrl+f5",
125
+ "when": "resourceExtname == .cssl"
126
+ }
127
+ ],
128
+ "taskDefinitions": [
129
+ {
130
+ "type": "cssl",
131
+ "required": ["file"],
132
+ "properties": {
133
+ "file": {
134
+ "type": "string",
135
+ "description": "The CSSL file to run"
136
+ }
137
+ }
138
+ }
139
+ ],
140
+ "configuration": {
141
+ "title": "CSSL",
142
+ "properties": {
143
+ "cssl.pythonPath": {
144
+ "type": "string",
145
+ "default": "python",
146
+ "description": "Path to Python executable"
147
+ },
148
+ "cssl.showOutput": {
149
+ "type": "boolean",
150
+ "default": true,
151
+ "description": "Show output panel when running CSSL files"
152
+ }
153
+ }
154
+ }
86
155
  }
87
156
  }
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
4
4
 
5
5
  [project]
6
6
  name = "IncludeCPP"
7
- version = "3.7.24"
7
+ version = "3.7.25"
8
8
  description = "Professional C++ Python bindings with type-generic templates, pystubs and native threading"
9
9
  readme = "README.md"
10
10
  requires-python = ">=3.9"
@@ -62,6 +62,7 @@ includecpp = [
62
62
  "core/cssl/*.md",
63
63
  "cli/*.pyi",
64
64
  "vscode/cssl/*.json",
65
+ "vscode/cssl/*.js",
65
66
  "vscode/cssl/syntaxes/*.json",
66
67
  "vscode/cssl/snippets/*.json",
67
68
  "vscode/cssl/images/*.png"
File without changes
File without changes
File without changes
File without changes
File without changes