- Changed the runner environment from 'ubuntu-latest' to 'ubuntu-22.04' in both auto-tag.yml and release.yml for consistency and to ensure compatibility with the latest features.
- Renamed the input parameter from 'tag' to 'version' in release.yml to improve clarity regarding its purpose in the release process.
- Explicitly defined RELEASE_TOKEN, GPG_PRIVATE_KEY, and PASSPHRASE as required secrets in both auto-tag.yml and release.yml to enhance security.
- Updated the release.yml to require a tag input for the release process, ensuring clarity in workflow execution.
- Adjusted the GPG key import step to utilize the defined secrets, improving the reliability of the signing process.
- Changed checkout action from v4 to v3 in both auto-tag.yml and release.yml for consistency.
- Downgraded setup-go action from v5 to v4 and goreleaser action from v5 to v4 to ensure compatibility with existing configurations.
- Removed explicit secrets definitions in auto-tag.yml, allowing the workflow to inherit secrets for improved security.
- Added explicit definitions for RELEASE_TOKEN, GPG_PRIVATE_KEY, and PASSPHRASE in the auto-tag.yml workflow.
- This change improves security by ensuring that necessary secrets are clearly specified for the release process.
- Added an optional input for GPG private key in release.yml to support signing releases.
- Updated the conditional check for GPG key import to utilize the new input, improving flexibility and maintainability.
- Ensured that the auto-tag workflow inherits secrets for better security practices.
- Upgraded checkout action from v3 to v4 in both auto-tag.yml and release.yml for improved performance.
- Added optional input for GPG private key in release.yml to support signing releases.
- Updated setup-go action from v4 to v5 and goreleaser action from v4 to v5, ensuring compatibility with the latest features.
- Changed GoReleaser version specification to 'latest' for automatic updates.
- Removed explicit permissions and secrets from auto-tag.yml, inheriting them instead for improved security and simplicity.
- Added a conditional check for the release job to only run on successful completion of the auto-tag job, enhancing workflow reliability.
- Removed the debug files step from release.yml to streamline the workflow.
- Standardized the conditional check for GPG key import to improve clarity and maintainability.
- Added GPG signing configuration to .goreleaser.yml to support artifact signing.
- Updated auto-tag.yml and release.yml to include necessary secrets for GPG signing, enhancing security and functionality.
- Ensured that GPG keys and passphrase are conditionally utilized in the release process.
- Changed permissions in auto-tag.yml and release.yml to 'write-all' for broader access.
- Updated GITHUB_TOKEN to use RELEASE_TOKEN in both workflows for enhanced security.
- Streamlined the workflows by removing redundant permission specifications.
- Updated permissions in both auto-tag.yml and release.yml to include write access for issues and pull requests.
- Changed the checkout action version from v4 to v3 in both workflows for consistency.
- Updated Go setup action version from v5 to v4 and specified the Go version as "1.21".
- Adjusted GPG import action version from v6 to v5.
- Updated GoReleaser action version from v5 to v4 and specified the release version as v1.21.2.
- Standardized string quotes in YAML files for consistency.
- Added a new section to promote the WeChat public account for updates and programming tips.
- Included a QR code image for easy access to the WeChat account.
- This update aims to improve user engagement and provide more resources for developers.
- Added a function to check for required commands (curl).
- Simplified the download function to exclusively use curl for downloading assets.
- Improved error handling and user feedback when fetching the latest release information.
- Updated the main installation function to construct the binary name directly and provide clearer output during the installation process.
- Updated README.md to include new Windows installation features and manual installation instructions.
- Enhanced PowerShell installation script (install.ps1) to detect PowerShell version, handle elevation more effectively, and provide clearer user prompts for admin rights.
- Removed the redundant assignment of the ".exe" extension in .goreleaser.yml.
- Added conditional assignment of the ".exe" extension in build_all.bat to ensure clarity and consistency in binary naming for Windows builds.
- Eliminated the unnecessary assignment of the ".exe" extension for Windows in build_all.bat to streamline the script and avoid confusion regarding binary naming conventions.
- Removed unnecessary print statement in main.go to streamline output.
- Updated language strings in lang.go to include newline characters for better formatting.
- Enhanced PowerShell installation script (install.ps1) with improved error handling and user prompts for admin rights.
- Modified shell installation script (install.sh) to provide clearer error messages and find matching assets for different architectures.
- Updated go.mod and go.sum to include necessary dependencies.
- Refactored README.md for clearer installation instructions and improved formatting.
- Enhanced main.go with better error handling and user feedback during execution.
- Improved configuration management in config.go, ensuring atomic writes and better error handling.
- Updated language support in lang.go for clearer user messages.
- Enhanced process management in manager.go to ensure more reliable process termination.
- Improved UI display methods for better user experience.
- Removed outdated test file generator_test.go to clean up the codebase.
- Updated install.ps1 script for better output formatting and error handling.
- Deleted the Makefile as it was no longer needed for the build process.
- Enhanced the README with clearer installation instructions, including a one-click solution for Linux/macOS and Windows.
- Improved formatting and added details for system support and configuration files.
- Updated the project stats section for better visibility.
These changes streamline the documentation and improve user experience for installation and usage of the Cursor ID Modifier tool.
- Enhanced build scripts for improved parallel execution and optimization flags.
- Updated installation scripts for better user experience and error handling.
- Modified .gitignore to include new build artifacts and IDE configurations.
- Updated .goreleaser.yml for better release management and platform support.
- Removed deprecated main.go file and adjusted README for clarity on installation and usage.
- Added support for multiple architectures in build process, including 32-bit and 64-bit for Windows, macOS, and Linux.
These changes streamline the development workflow and enhance the overall usability of the Cursor ID Modifier tool.
BREAKING CHANGE: machineId format has been updated to generate 74-character hex strings
Technical Analysis:
Decoded sample ID reveals structured format:
61757468307c757365725f3031... => "auth0|user_01..."
Contains identifiable prefix and separator pattern
Includes encoded user identification information
Changes:
Modified generateMachineId() to produce 74-character hex strings (37 bytes)
Updated related documentation and comments
Ensured compatibility with Cursor v0.44.0 requirements
Removed legacy format handling code
Format Example:
1757468307c757365725f30314a4552464a514639364237464b44583934484a4831374452
─ Hex encoded string containing auth0 prefix and user information
Note: New format provides enhanced uniqueness and metadata capabilities
Reference:
Thanks to 🙏[Huaguang]佬友 for the analysis: https://linux.do/t/topic/287438/148
Cursor version: 0.44+
- Modified NewStorageConfig to use different ID generation functions for TelemetryMacMachineId and TelemetryMachineId, ensuring machineId uses a new format while others retain the old format.
- Enhanced saveConfig to read the original configuration file, preserving all fields while updating telemetry-related fields.
- Added lastModified and version fields to the configuration if they do not exist, improving configuration management.
- Introduced a new generateMacMachineId function for consistent ID generation.
These changes improve the flexibility and maintainability of the storage configuration handling.