119 Commits

Author SHA1 Message Date
1728c08e39 Rename UI source directory from src/electron to src/app.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-28 22:02:57 +01:00
01b3cc1aa1 Update Linux package build command and enhance PDF utility imports
All checks were successful
farmcontrol/farmcontrol-server/pipeline/head This commit looks good
- Modify the Linux package build command in package.json to include the --no-bytecode flag for improved compatibility with ESM packages.
- Refactor pdfUtils.js to handle dynamic imports more robustly, ensuring compatibility with pkg snapshots and improving error handling for ESM modules.
- Simplify image processing logic by removing unnecessary default property access for the sharp module.
2026-07-28 02:58:03 +01:00
5fe8d76310 Refactor PDF conversion utilities for dynamic imports and option handling
All checks were successful
farmcontrol/farmcontrol-server/pipeline/head This commit looks good
- Replace static imports with dynamic imports using a helper function to improve compatibility with pkg snapshots.
- Simplify options handling by destructuring parameters, enhancing readability and maintainability.
- Update image processing logic to utilize destructured width and height options for resizing.
2026-07-28 02:18:27 +01:00
4677e17c7f Refactor file upload and progress handling in PrinterFileManager and PrinterClient
All checks were successful
farmcontrol/farmcontrol-server/pipeline/head This commit looks good
- Implement retry logic for file uploads in PrinterFileManager to enhance reliability.
- Update progress tracking in PrinterClient to streamline deployment feedback.
- Simplify progress callback management in FileManager for improved clarity.
- Enhance logging for upload processes and error handling across components.
2026-07-28 00:22:35 +01:00
853784e361 Enhance command line utilities and logging functionality
All checks were successful
farmcontrol/farmcontrol-server/pipeline/head This commit looks good
- Refactor commandline.js to improve server status checks and OTP authentication handling.
- Introduce new functions for checking server status, printing server information, and setting log levels.
- Add support for command line flags to manage log levels and server information display.
- Implement logging level management in localserver.js, allowing dynamic log level adjustments via API.
- Create a new logging.js module to centralize log level validation and application.
- Update commandlineutils.js to include utility functions for flag handling and improved CLI output.
2026-07-27 23:51:54 +01:00
e2600f8242 Refactor logging in PrinterDatabase and PrinterManager, and streamline config saving in SocketClient
- Update logging in PrinterDatabase to correctly reference the printer state type.
- Remove redundant call to stopWaiting() in PrinterManager for cleaner code execution.
- Ensure config saving in SocketClient occurs unconditionally for improved reliability.
2026-07-27 23:15:20 +01:00
3ca730ecee Add data directory management and enhance command line output
All checks were successful
farmcontrol/farmcontrol-server/pipeline/head This commit looks good
- Introduce functions to determine and create default data directories for both production and development environments in config.js.
- Update commandline.js to display the configured data directory and config path in the command line output.
- Modify filemanager.js to ensure the existence of a dedicated files directory within the data directory.
- Enhance localserver.js to include the data directory and config path in the server response, providing better context for users.
2026-07-27 18:15:29 +01:00
cb799ae8b7 Add command line handling for server status and authentication
- Introduce a new command line utility in commandline.js to manage server status checks and OTP authentication.
- Refactor index.js to utilize the new command line handling, improving clarity and separation of concerns.
- Enhance localserver.js to include connection status in the server response, providing more detailed information about the server state.
2026-07-27 18:09:50 +01:00
9a68358432 Enhance server initialization error handling and logging
All checks were successful
farmcontrol/farmcontrol-server/pipeline/head This commit looks good
- Introduce a check for the Farm Control Server status during initialization, providing clearer feedback when the server is not running.
- Improve error handling by logging specific failure messages instead of throwing errors, enhancing user experience during startup.
2026-07-27 02:17:34 +01:00
1525667f54 Update chalk dependency to version 5.4.1 and enhance server initialization logging
All checks were successful
farmcontrol/farmcontrol-server/pipeline/head This commit looks good
- Downgrade chalk from version 6.0.0 to 5.4.1 in package.json and pnpm-lock.yaml to ensure compatibility.
- Add a call to stopWaiting() in the server initialization process to improve user experience during startup.
2026-07-27 02:06:03 +01:00
ee9895d562 Update configuration and enhance CLI logging functionality
Some checks failed
farmcontrol/farmcontrol-server/pipeline/head There was a failure building this commit
- Change log level in development config from "debug" to "info" for improved clarity.
- Add new dependencies: chalk and cli-spinners for enhanced CLI output.
- Introduce command line utility functions for better logging and spinner management.
- Refactor various components to utilize the new CLI logging methods, improving user feedback during operations.
- Update package and lock files to reflect new dependencies.
2026-07-27 02:03:17 +01:00
20080929f9 Update build discarder configuration in Jenkinsfile to retain the last 20 builds, improving build management. 2026-07-27 00:21:10 +01:00
22c96768a5 Add sleep delay before displaying server info in after-install script. 2026-07-27 00:20:27 +01:00
e04c06493b Delete builds older than 25.
All checks were successful
farmcontrol/farmcontrol-server/pipeline/head This commit looks good
2026-07-26 23:56:12 +01:00
d649ce42ff Add build discarding properties to Jenkinsfile
Some checks failed
farmcontrol/farmcontrol-server/pipeline/head There was a failure building this commit
Introduce a build discarder configuration in the Jenkinsfile to retain the last 10 builds, improving build management and resource utilization.
2026-07-26 23:46:43 +01:00
3f5f02b087 Enhance SocketClient functionality and improve host update handling
Some checks failed
farmcontrol/farmcontrol-server/pipeline/head There was a failure building this commit
Add a new method to handle host updates in SocketClient, ensuring that updates are processed correctly based on the host ID. Additionally, improve logging in index.js to include the first tag of the host for better visibility. This change streamlines the management of host information and enhances the overall logging clarity.
2026-07-26 23:42:48 +01:00
d616a45f21 Improve logging for host tags and streamline build information display
Some checks failed
farmcontrol/farmcontrol-server/pipeline/head There was a failure building this commit
Refactor the logging in index.js to handle cases where host tags are absent, ensuring a clear output of "Tags: n/a" when no tags are available. Additionally, simplify the build information logging for better readability by consolidating logger.info calls.
2026-07-26 23:34:32 +01:00
9f927b1ef5 Enhance build process and server version management
Some checks failed
farmcontrol/farmcontrol-server/pipeline/head There was a failure building this commit
Refactor build-linux-bundle.mjs to include package version and build number from environment variables and package.json. Update headless.js to streamline initialization and improve error handling. Introduce serverVersion.js to centralize version information retrieval, replacing redundant code in localserver.js. Enhance logging in index.js to display build number and version more clearly.
2026-07-26 23:27:08 +01:00
4d35df3051 Refactor headless mode initialization and enhance index.js structure
Some checks failed
farmcontrol/farmcontrol-server/pipeline/head There was a failure building this commit
Replace the previous headless mode implementation in headless.js with a streamlined init function in index.js that accepts options. This change improves modularity and error handling during initialization. The logger setup and socket client connection have been removed from headless.js, centralizing the logic in index.js.
2026-07-26 23:21:07 +01:00
a62df6a5c6 Enhance build metadata handling and server info logging
Some checks failed
farmcontrol/farmcontrol-server/pipeline/head There was a failure building this commit
Add a function to write build metadata to src/buildInfo.json during the build process in Jenkinsfile. Update local server to include version and build number in the /info endpoint response. Modify index.js to log detailed host information when the --info flag is used. Update .gitignore to include src/buildInfo.json and adjust config.json with new host credentials.
2026-07-26 23:14:04 +01:00
997b374e0e Add before-remove script for package uninstallation and streamline after-remove script
All checks were successful
farmcontrol/farmcontrol-server/pipeline/head This commit looks good
Introduce a new before-remove.sh script to stop and disable the farmcontrol-server service before package removal. Update after-remove.sh to only reload systemd, simplifying the uninstallation process. Modify build-linux-packages.sh to include the new before-remove script in the packaging process.
2026-07-26 22:56:42 +01:00
2e95075d3e Implement local server for OTP authentication and enhance socket client functionality
All checks were successful
farmcontrol/farmcontrol-server/pipeline/head This commit looks good
Add a LocalServer class to handle OTP authentication requests and server status checks. Update index.js to integrate local server functionality, including checks for server status and OTP authentication flow. Enhance SocketClient with connection waiting and improved OTP authentication handling. Update config.json with a new authCode for the host.
2026-07-26 22:48:02 +01:00
55b4c1a42e Add PDF conversion utilities and update build scripts for Linux packaging
All checks were successful
farmcontrol/farmcontrol-server/pipeline/head This commit looks good
Introduce a new pdfUtils.js file for on-demand PDF conversion using pdf-to-img and sharp. Update package.json to include new build scripts for Linux packaging, enhancing the build process with public package handling. Add .npmrc for public hoisting patterns and create build-linux-packages.sh for streamlined package creation.
2026-07-26 21:47:21 +01:00
d1592bf55e Refactor build scripts in package.json to enhance Mac and Linux build processes. Introduce new build:linux-bundle script, update dependencies, and remove deprecated WorkingDirectory from farmcontrol-server.service. Add import-meta-url.js for improved module handling in headless mode.
All checks were successful
farmcontrol/farmcontrol-server/pipeline/head This commit looks good
2026-07-26 21:37:20 +01:00
c04ce32431 Enhance part stock and stock event creation in PrinterDatabase. Update part retrieval to include partSku, improve logging for part stock creation, and add stock event creation with detailed information for subjobs.
Some checks failed
farmcontrol/farmcontrol-server/pipeline/head There was a failure building this commit
2026-07-26 21:21:42 +01:00
8c6176b593 Enhance alert management in PrinterDatabase and PrinterClient. Introduce unique alert IDs using randomUUID, refactor alert removal methods to filter by code, and implement new methods for handling motion errors and axis movements. Update logging for improved clarity.
Some checks failed
farmcontrol/farmcontrol-server/pipeline/head There was a failure building this commit
2026-07-26 21:12:07 +01:00
8da48a158f Update MacOS build command in Jenkinsfile and add specific build script for Mac architecture in package.json.
Some checks failed
farmcontrol/farmcontrol-server/pipeline/head There was a failure building this commit
2026-07-26 19:30:27 +01:00
db8e035c86 Remove console.log statements for weight and filament detection in PrinterClient and PrinterDatabase. Update precision of currentFilamentUsed logging to 8 decimal places. Add placeholder for homeAxis method in PrinterClient.
Some checks failed
farmcontrol/farmcontrol-server/pipeline/head There was a failure building this commit
2026-07-26 18:38:15 +01:00
57e0c5a30d Fix download progress calculation in FileManager and improve error handling in PrinterDatabase. Refactor PrinterClient to manage current filament state more effectively.
Some checks failed
farmcontrol/farmcontrol-server/pipeline/head There was a failure building this commit
2026-07-26 16:54:18 +01:00
b57d269f9b Fixed build config.
Some checks failed
farmcontrol/farmcontrol-server/pipeline/head There was a failure building this commit
2026-07-26 14:21:06 +01:00
afe42dafa6 Refactor build scripts in package.json to standardize clean command usage and improve build process for Linux.
All checks were successful
farmcontrol/farmcontrol-server/pipeline/head This commit looks good
2026-06-15 01:11:15 +01:00
d5a773ff89 Refactor build:linux script to include clean command and ensure proper build directory setup. 2026-06-15 01:09:39 +01:00
f29229fe6f Update package.json and pnpm-lock.yaml to reflect dependency version upgrades, including axios, form-data, mongoose, and others.
Some checks are pending
farmcontrol/farmcontrol-server/pipeline/head Build started...
2026-06-15 01:08:54 +01:00
96060c95b0 Update Electron and electron-builder versions in package.json and pnpm-lock.yaml, and remove deprecated dependencies.
Some checks failed
farmcontrol/farmcontrol-server/pipeline/head There was a failure building this commit
2026-06-15 01:02:46 +01:00
ffa6d84251 Update dependencies, improve document printer management, and add workspace configuration
Some checks failed
farmcontrol/farmcontrol-server/pipeline/head There was a failure building this commit
2026-06-15 00:53:28 +01:00
3cc2cbe020 Changed linux build method.
Some checks failed
farmcontrol/farmcontrol-server/pipeline/head There was a failure building this commit
2026-02-01 22:34:27 +00:00
bc91c2330f Switched to pnpm.
Some checks failed
farmcontrol/farmcontrol-server/pipeline/head There was a failure building this commit
2026-02-01 22:31:15 +00:00
731985000d Added build status to readme.md
Some checks failed
farmcontrol/farmcontrol-server/pipeline/head There was a failure building this commit
2025-12-29 02:36:55 +00:00
e36151d453 Refactor build:linux script to include package output directory for deb and rpm packages.
All checks were successful
farmcontrol/farmcontrol-server/pipeline/head This commit looks good
2025-12-29 02:09:24 +00:00
d01355bee1 Fixed linux and macOS builds.
Some checks failed
farmcontrol/farmcontrol-server/pipeline/head There was a failure building this commit
2025-12-29 01:32:51 +00:00
c9c59c2bff Update lockfile.
Some checks reported errors
farmcontrol/farmcontrol-server/pipeline/head Something is wrong with the build of this commit
2025-12-29 00:04:31 +00:00
c2619820de Cross platform file ops.
Some checks failed
farmcontrol/farmcontrol-server/pipeline/head There was a failure building this commit
2025-12-29 00:02:24 +00:00
dc962b76dd Fixed windows builds.
Some checks failed
farmcontrol/farmcontrol-server/pipeline/head There was a failure building this commit
2025-12-28 23:55:47 +00:00
2e81eefd76 Fixed linux build.
Some checks failed
farmcontrol/farmcontrol-server/pipeline/head There was a failure building this commit
2025-12-28 23:33:03 +00:00
f852587801 Update lockfile.
Some checks failed
farmcontrol/farmcontrol-server/pipeline/head There was a failure building this commit
2025-12-28 23:27:30 +00:00
6539f6e2ff Updated Jenkinsfile to build Linux version using 'yarn build:linux'. Refactored package.json to separate server and renderer build processes, and added new build:linux script. Cleaned up after-install.sh and after-remove.sh scripts by removing service file handling.
Some checks failed
farmcontrol/farmcontrol-server/pipeline/head There was a failure building this commit
2025-12-28 23:23:17 +00:00
d98140491f Fixed config path issue.
Some checks failed
farmcontrol/farmcontrol-server/pipeline/head There was a failure building this commit
2025-12-28 22:18:23 +00:00
34ee72b19e Changed config file location for builds.
Some checks reported errors
farmcontrol/farmcontrol-server/pipeline/head Something is wrong with the build of this commit
2025-12-28 22:09:29 +00:00
7dbe7da4ee Overhauled server code.
Some checks reported errors
farmcontrol/farmcontrol-server/pipeline/head Something is wrong with the build of this commit
2025-12-28 21:46:58 +00:00
5db74f2c5c New version of farmcontrol-server. Includes electron UI, connects only via WS and authenticates using OTP and then auth code.
Some checks failed
farmcontrol/farmcontrol-server/pipeline/head There was a failure building this commit
2025-09-05 23:33:21 +01:00