Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
57 changes: 57 additions & 0 deletions Python/XA/CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,57 @@
# Changelog

All notable changes to this project will be documented in this file.

The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/),
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).

## [Unreleased]

## [1.1.6] - 2026-03-31

### Changed

- Added GitHub changelog URL to package metadata (#9903).

## [1.1.5] - 2026-03-27

### Changed

- Internal native API improvements (#9899).

## [1.1.4] - 2026-03-26

### Changed

- Internal native API improvements (#9895).

## [1.1.3] - 2026-03-26

### Fixed

- Connected product information now correctly reported as "rotational - continuous" (rather than "rotational - fixed range") for FW103, FW6, FW12, HDR50 and NR360S stages (#9883).

## [1.1.2] - 2026-03-20

### Added

- Added native API support for PDXC3 (#9879).

## [1.1.1] - 2026-03-03

### Changed

- Internal native API improvements (#9858).

## [1.1.0] - 2026-02-19

### Added

- LTS product API support (#9851).
- KDC product API support (#9850).

## [1.0.0] - 2026-01-21

### Added

- Initial python wrapper API implementation (#9719, #9720).
55 changes: 55 additions & 0 deletions Python/XA/EULA.rtf
Original file line number Diff line number Diff line change
@@ -0,0 +1,55 @@
{\rtf1\ansi\ansicpg1252\deff0\nouicompat\deflang2057\deflangfe2057{\fonttbl{\f0\fswiss\fprq2\fcharset0 Arial;}{\f1\froman\fprq2\fcharset2 Symbol;}{\f2\froman\fprq2\fcharset0 Times New Roman;}}
{\*\generator Riched20 10.0.22621}{\*\mmathPr\mnaryLim0\mdispDef1\mwrapIndent1440 }\viewkind4\uc1
\pard\brdrb\brdrs\brdrw50\brsp20 \widctlpar\sa120\qc\f0\fs18\lang1033 END-USER LICENSE AGREEMENT FOR \b THORLABS XA SOFTWARE\par
\par

\pard\widctlpar\sa120\qj\fs16 IMPORTANT-READ CAREFULLY. This End-User License Agreement (\ldblquote EULA\rdblquote ) is a legal AGREEMENT between you (either as a registered individual user or as the registered user/representative and on behalf of a single entity) and the company for the product identified above, which product includes computer software and may include associated media, printed materials, and \ldblquote online\rdblquote or electronic documentation. By installing, copying, or otherwise using the software, you agree to be bound by the terms of this EULA. \i If you do not agree to the terms of this EULA, then DO NOT install or use the XA software; in such event the original purchaser may, however, return it to the place of purchase within thirty days of the date of original purchase for a full refund.\i0\par

\pard\brdrt\brdrs\brdrw50\brsp20 \widctlpar\sa120\qc\par
XA SOFTWARE LICENSE\par

\pard\widctlpar\sa120\qj\b0\fs14 The XA SOFTWARE is protected by copyright laws and international copyright treaties, as well as other intellectual property laws and treaties. The SOFTWARE is licensed free of charge for use with any and all supported XA hardware, or the development of end applications thereof, and not sold. \par

\pard\widctlpar\fi-360\li360\sa120\qj\b 1)\tab GRANT OF LICENSE\b0 . This EULA grants you, the registered user the following rights:\par

\pard\widctlpar\fi-360\li720\sa120\qj\b\f1\'b7\tab\f0 Applications Software\b0 . The XA SOFTWARE may be used only by you. You may install and use multiple copies of the XA SOFTWARE, or any prior version thereof for the supported operating systems, on more than one computer. \par
\b\f1\'b7\tab\f0 Redistributable File(s)\b0 . Notwithstanding the terms of this EULA to the contrary, certain parts of the executable files of the XA SOFTWARE may be redistributed by you to the extent required for the permitted operation of the application(s) software installation code created by you while using the XA SOFTWARE hereunder. The specific redistributable file(s) are limited to those specifically identified as \ldblquote Redistributables\rdblquote in the media, printed materials, and \ldblquote online\rdblquote or electronic documentation accompanying the particular embodiment of the XA SOFTWARE. To determine whether a particular file(s) are redistributable, please contact Technical Support.\par
\b\f1\'b7\tab\f0 Storage/Network Use\b0 . You may also store or install a copy of the XA SOFTWARE on a storage device, such as a network server, used only to install or run the XA SOFTWARE on your other computers over an internal network.\par
\par

\pard\widctlpar\fi-360\li360\sa120\qj\b 2)\tab DESCRIPTION OF OTHER RIGHTS AND LIMITATIONS\b0 .\par

\pard\widctlpar\fi-360\li720\qj\b\f1\'b7\tab\f0\lang2057 Limitations on Reverse Engineering, Decompilation, and Disassembly\b0 . You may not modify, reverse engineer, decompile, or disassemble the XA SOFTWARE, except and only to the extent that such activity is expressly permitted by applicable law notwithstanding this limitation of components, and after obtaining relevant permissions from the company, including notification of the intended application and final state of the XA SOFTWARE. The XA SOFTWARE is licensed as a single product. Its component parts may not be separated for use, except those identified as \lang1033 redistributables and used in a manner to distribute an end application\lang2057 .\par
\f2\par

\pard\widctlpar\fi-360\li720\sa120\qj\b\f1\lang1033\'b7\tab\f0 Rental\b0 . You may not rent or lease the XA SOFTWARE to any party.\par
\b\f1\'b7\tab\f0 Software Transfer\b0 . You may permanently and wholly transfer all of your rights under this EULA, provided you the recipient first agrees to abide by all of the terms of this EULA. If the XA SOFTWARE is an upgrade, any transfer must include any and all prior rights therein. \par
\b\f1\'b7\tab\f0 Support Services\b0 . The company may provide you with support services related to the XA SOFTWARE (\ldblquote Support Services\rdblquote ). The provision and use of Support Services is governed by the policies and programs described in the XA SOFTWARE user manual and/or in \ldblquote online\rdblquote documentation. Any supplemental software code provided to you as part of the Support Services shall be considered part of the XA SOFTWARE and subject to the terms and conditions of this EULA. With respect to technical information you provide to the company as part of the Support Services, the company may use such information for its business purposes, including for product updates and development. The company will use its best efforts to not utilize such technical information in a form that personally identifies you.\par
\b\f1\'b7\tab\f0 Termination\b0 . Without prejudice to any of the companies other rights, the company may terminate this EULA if you fail to comply with the terms and conditions of this EULA. In such event, you must destroy any and all copies of the XA SOFTWARE and all of its component parts; to this end you grant to the company the right to, with or without notice, monitor your Internet accessible activities for the purpose of verifying XA SOFTWARE performance and/or your compliance with the terms hereof, including, but not limited to the remote monitoring and verification of your implementation, use and duplication of the XA SOFTWARE.\par

\pard\widctlpar\fi-360\li360\sa120\qj\page\b 3)\tab UPGRADES\b0 . \par

\pard\widctlpar\fi-360\li720\sa120\qj\b\f1\'b7\tab\b0\f0 If the XA SOFTWARE is labeled or otherwise identified by the company as an \ldblquote upgrade\rdblquote , you must be properly licensed to use a product identified by the company as being eligible for the upgrade in order to use the XA SOFTWARE. A version of XA SOFTWARE, labeled or otherwise identified by the company as an upgrade, replaces and/or supplements the product that formed the basis for your eligibility for such upgrade. You may use the resulting upgraded product only in accordance with the terms of this EULA. If the version of XA SOFTWARE is an upgrade of a component of a package of software programs that you licensed as a single product, the XA SOFTWARE may be used and transferred only as part of that single product package.\par

\pard\widctlpar\fi-360\li360\sa120\qj\par

\pard\keepn\widctlpar\fi-360\li360\sa120\qj\b 4)\tab COPYRIGHT AND TRADEMARKS.\b0 \par

\pard\widctlpar\fi-360\li720\sa120\qj\f1\'b7\tab\f0 All title, trademarks and copyrights in and pertaining to the XA SOFTWARE (including but not limited to any images, photographs, animation, video, audio, music, text, and applets incorporated into the XA SOFTWARE), the accompanying, printed materials and any copies of the XA SOFTWARE are owned by the company or its affiliated companies. The XA SOFTWARE is protected by copyright and trademark laws and international treaty provisions. You must treat the XA SOFTWARE like any other copyrighted material for archival purposes, and you may not copy the printed materials accompanying the XA SOFTWARE other than for the use by you.\par
\f1\'b7\tab\f0 You may not remove, modify or alter any company copyright or trademark notice from any part of the XA SOFTWARE, including but not limited to any such notices contained in the physical and/or electronic media or documentation, in the Setup Wizard dialogue or \lquote about\rquote boxes, in any of the runtime resources and/or in any web-presence or web-enabled notices, code or other embodiments originally contained in or dynamically or otherwise created by the XA SOFTWARE.\par

\pard\widctlpar\fi-360\li360\sa120\qj\b 5)\tab DUAL-MEDIA SOFTWARE.\b0 You may receive the XA SOFTWARE in more than one medium. Regardless of the type or size of the medium you receive, you may not loan, rent, lease, or otherwise transfer the other medium to another user, except as part of the permanent transfer (as provided above) of the XA SOFTWARE.\par

\pard\widctlpar\li360\sa120\qj\par

\pard\widctlpar\fi-360\li360\sa120\qj\b 6)\tab LIMITED WARRANTY\b0\par

\pard\widctlpar\fi-360\li720\sa120\qj\b\f1\'b7\tab\f0 Limited Warranty\b0 . The company warrants that (a) the XA SOFTWARE will, for a period of ninety (90) days from the date of your receipt, perform substantially in accordance with the\b \b0 written materials accompanying it, (b) any Support Services provided by the company shall be substantially as described in applicable written materials provided to you by the company, and (c) Company support engineers will make commercially reasonable efforts to solve any problem issues with the XA SOFTWARE. To the extent that implied warranties on the XA SOFTWARE are disclaimable, they are disclaimed herein below. Some countries do not allow disclaimers of or limitations on the duration of an implied warranty, so the above limitation may not apply to you. To the extent implied warranties may not be entirely disclaimed but implied warranty limitations are allowed by applicable law, implied warranties on the XA SOFTWARE, if any, are limited to ninety (90) days.\par
\b\f1\'b7\tab\f0 Customer Remedies\b0 . The company and its suppliers\rquote entire liability and your exclusive remedy shall be, at the companies option, either (a) return of the price paid by you for the accompanying XA hardware (not to exceed the retail price) if any, or (b) repair or replacement of the component(s) of the XA SOFTWARE that do(es) not meet the companies Warranty and which is returned to the company with a copy of your purchase receipt. This Limited Warranty is void if failure of the XA SOFTWARE has resulted from accident, abuse, or misapplication. Any replacement XA SOFTWARE will be warranted for the remainder of the original warranty period or thirty (30) days, whichever is longer. Outside of the United Kingdom, neither of these remedies nor any product support services offered by the company are available without proof of purchase from an authorized international source.\par
\b\f1\'b7\tab\f0 No Other Warranties.\b0 TO THE MAXIMUM EXTENT PERMITTED BY APPLICABLE LAW, THE COMPANY AND ITS SUPPLIERS DISCLAIM ALL OTHER WARRANTIES AND CONDITIONS, EITHER EXPRESS OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, TITLE, AND NON-INFRINGEMENT, WITH REGARD TO THE XA SOFTWARE AND THE PROVISION OF OR FAILURE TO PROVIDE SUPPORT SERVICES. THIS LIMITED WARRANTY GIVES YOU SPECIFIC LEGAL RIGHTS. YOU MAY HAVE OTHERS, WHICH VARY FROM STATE/JURISDICTION TO STATE/JURISDICTION.\par

\pard\widctlpar\fi-360\li360\sa120\qj\b 7)\tab LIMITATION OF LIABILITY\b0 . TO THE MAXIMUM EXTENT PERMITTED BY APPLICABLE LAW, IN NO EVENT SHALL THE COMPANY OR ITS SUPPLIERS BE LIABLE FOR ANY SPECIAL, INCIDENTAL, INDIRECT, OR CONSEQUENTIAL DAMAGES WHATSOEVER (INCLUDING, WITHOUT LIMITATION, DAMAGES FOR LOSS OF BUSINESS PROFITS, BUSINESS INTERRUPTION, LOSS OF BUSINESS INFORMATION, OR ANY OTHER PECUNIARY LOSS) ARISING OUT OF THE USE OF OR INABILITY TO USE THE XA SOFTWARE OR THE PROVISION OF OR FAILURE TO PROVIDE SUPPORT SERVICES, EVEN IF THE COMPANY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. \fs16\par

\pard\widctlpar\f2\fs20\lang2057\par
}
16 changes: 16 additions & 0 deletions Python/XA/LICENSE
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
The XA Python SDK is licensed under the BSD 3-Clause license:
=============================================================

Copyright © 2024-2025 Thorlabs

Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:

1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.

2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.

3. Neither the name of the copyright holder nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.

THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS “AS IS” AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

The XA native library is licensed under the separate Thorlabs EULA found in EULA.rtf in the installed package folder.
4 changes: 4 additions & 0 deletions Python/XA/MANIFEST.in
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
include EULA.rtf
include VERSION
include ReadMe.md
include CHANGELOG.md
5 changes: 5 additions & 0 deletions Python/XA/ReadMe.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
# Thorlabs XA Python SDK

This is the official Thorlabs XA Python SDK. The required XA native SDK is included in this package.

Please refer to the LICENSE file for details regarding the licensing of this package and its dependencies.
1 change: 1 addition & 0 deletions Python/XA/VERSION
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
0.0.0.0.dev0
Loading