diff --git a/.github/workflows/linux.yml b/.github/workflows/linux.yml index 3d483dd8d..603816dbd 100644 --- a/.github/workflows/linux.yml +++ b/.github/workflows/linux.yml @@ -66,27 +66,30 @@ jobs: image: fedora:latest options: --privileged steps: - - uses: actions/checkout@v3.3.0 - with: - submodules: false - name: Configure container environment run: | sudo dnf update -y sudo dnf install -y git git config --global --add safe.directory ${GITHUB_WORKSPACE} + - uses: actions/checkout@v3.3.0 + with: + submodules: false - name: Setup environment run: | sudo dnf install -y sdl12-compat python3-wxpython4 xorg-x11-server-Xvfb python3-pip psmisc sudo dnf downgrade -y mesa* --refresh - sudo -H pip install -r requirements-dev.txt + git submodule update --init --recursive + pip install -r requirements-dev.txt - name: Run tests run: | Xvfb & export DISPLAY=:0 export GITHUB_ACTIONS=True + git submodule update --init --recursive invoke test-ci - name: Install and run run: | + git submodule update --init --recursive pip install . xvfb-run --server-args="-screen 0, 1280x720x24" -a ride.py & sleep 10 @@ -103,20 +106,24 @@ jobs: submodules: false - name: Fetch tags run: | - git fetch --prune --depth=1 --no-recurse-submodules + git fetch --prune --depth=1 --recurse-submodules + git submodule update --init --recursive - name: Setup environment run: | sudo apt update -y sudo apt install -y libsdl1.2debian libsdl2-2.0-0 libnotify4 - sudo pip install https://extras.wxpython.org/wxPython4/extras/linux/gtk3/ubuntu-22.04/wxPython-4.2.1-cp310-cp310-linux_x86_64.whl - sudo pip install -r requirements-dev.txt + git submodule update --init --recursive + pip install https://extras.wxpython.org/wxPython4/extras/linux/gtk3/ubuntu-22.04/wxPython-4.2.1-cp310-cp310-linux_x86_64.whl + pip install -r requirements-dev.txt - name: Run tests run: | Xvfb & export DISPLAY=:0 + git submodule update --init --recursive invoke test-ci - name: Install and run run: | + git submodule update --init --recursive pip install . xvfb-run --server-args="-screen 0, 1280x720x24" -a ride.py & sleep 10 diff --git a/.github/workflows/sonar.yml b/.github/workflows/sonar.yml index abdd02af6..c8d11f788 100644 --- a/.github/workflows/sonar.yml +++ b/.github/workflows/sonar.yml @@ -28,16 +28,21 @@ jobs: - name: Install invoke and any other packages run: pip install coverage invoke pytest - name: Install wxPython - run: pip install https://extras.wxpython.org/wxPython4/extras/linux/gtk3/ubuntu-22.04/wxPython-4.2.0-cp310-cp310-linux_x86_64.whl + run: pip install https://extras.wxpython.org/wxPython4/extras/linux/gtk3/ubuntu-22.04/wxPython-4.2.1-cp310-cp310-linux_x86_64.whl - name: Install RIDE dependencies - run: pip install -r requirements-dev.txt + run: | + git submodule update --init --recursive + pip install -r requirements-dev.txt - name: Run Xvfb run: Xvfb :1 -noreset & - name: Test Install RIDE - run: pip install . + run: | + git submodule update --init --recursive + pip install . - name: Run RIDE unit-tests run: | export DISPLAY=:1 + git submodule update --init --recursive invoke test-ci - name: Analyze with SonarCloud uses: sonarsource/sonarcloud-github-action@master diff --git a/.gitmodules b/.gitmodules new file mode 100644 index 000000000..8eb2cad0d --- /dev/null +++ b/.gitmodules @@ -0,0 +1,3 @@ +[submodule "src/robotide/preferences/configobj"] + path = src/robotide/preferences/configobj + url = https://github.com/DiffSK/configobj.git diff --git a/CHANGELOG.adoc b/CHANGELOG.adoc index 15c97b69f..3a3a993c7 100644 --- a/CHANGELOG.adoc +++ b/CHANGELOG.adoc @@ -7,7 +7,12 @@ The format is based on http://keepachangelog.com/en/1.0.0/[Keep a Changelog] and this project adheres to http://semver.org/spec/v2.0.0.html[Semantic Versioning]. -// == https://github.com/robotframework/RIDE[Unreleased] +== https://github.com/robotframework/RIDE[Unreleased] + +=== Changed + +- Changed the workflow for the development versions of RIDE. Now, development versions are taken from the ``develop`` branch, and the ``master`` will stay with released version. +- Changed the way ``configobj`` code is imported. Now is a submodule obtained from https://github.com/DiffSK/configobj. == https://github.com/robotframework/RIDE/blob/master/doc/releasenotes/ride-2.1.rst[2.1] - 2024-10-13 diff --git a/MANIFEST.in b/MANIFEST.in index 2b8dd2cce..6c69da1ac 100644 --- a/MANIFEST.in +++ b/MANIFEST.in @@ -8,5 +8,6 @@ recursive-include src *.css *.js *.py *.robot *.txt *.png *.gif *.ico *.cfg *.ht recursive-include doc *.rst recursive-include rtest *.py *.txt recursive-include src/robotide/postinstall/RIDE.app *.* +recursive-include src/robotide/preferences/configobj/src/configobj *.* recursive-include src/robotide/localization *.py *.adoc *.pot *.po *.mo diff --git a/README.adoc b/README.adoc index c58b4b137..62ad8a17c 100644 --- a/README.adoc +++ b/README.adoc @@ -22,9 +22,9 @@ You can use the tag *robotframework-ide* to search and ask on https://stackoverf == **Welcome to the development version of RIDE - next major release will be version 2.2** -// If you are looking for the latest released version, you can get the source code from **https://github.com/robotframework/RIDE/releases[releases]** or from branch **https://github.com/robotframework/RIDE/tree/release/2.0.8.1[release/2.0.8.1]** +If you are looking for the latest released version, you can get the source code from **https://github.com/robotframework/RIDE/releases[releases]** or from branch **https://github.com/robotframework/RIDE/tree/release/2.1[release/2.1]** -// See the https://github.com/robotframework/RIDE/blob/master/doc/releasenotes/ride-2.0.8.1.rst[release notes] for latest release version 2.0.8.1 +See the https://github.com/robotframework/RIDE/blob/master/doc/releasenotes/ride-2.1.rst[release notes] for latest release version 2.1 **Version https://github.com/robotframework/RIDE/tree/release/2.0.8.1[2.0.8.1] was the last release supporting Python 3.6 and 3.7** @@ -36,13 +36,13 @@ You can use the tag *robotframework-ide* to search and ask on https://stackoverf Currently, the unit tests are tested on Python 3.10, and 3.12 (which is the recommended version). Likewise, the current version of wxPython, is 4.2.2, but RIDE is known to work with 4.0.7 and 4.1.1 versions. -(3.6 <= python <= 3.11) Install current released version (*2.1*) with: +(3.8 <= python <= 3.12) Install current released version (*2.1*) with: `pip install -U robotframework-ride` -(3.8 <= python <= 3.12) Install current development version (**2.1**) with: +(3.8 <= python <= 3.12) Install current development version (**2.1.1**) with: -`pip install -U https://github.com/robotframework/RIDE/archive/master.zip` +`pip install -U https://github.com/robotframework/RIDE/archive/develop.zip` //(3.8 <= python <= 3.12) Install current Beta version (2.1b1) with: diff --git a/setup.cfg b/setup.cfg index a46dea045..199ddd8cf 100644 --- a/setup.cfg +++ b/setup.cfg @@ -10,6 +10,10 @@ count = False max_line_length = 90 statistics = True +[options] +packages = find: +include_package_data = true + [options.entry_points] gui_scripts = ride = robotide.__main__:main diff --git a/setup.py b/setup.py index ab44a5d79..68bf86074 100644 --- a/setup.py +++ b/setup.py @@ -49,6 +49,14 @@ PACKAGE_DATA['robotide.localization'] = my_list[:] +my_list = [] +for curr_dir, _, files in os.walk('src/robotide/preferences/configobj/src/configobj'): + for item in files: + if '.' in item: + my_list.append(os.path.join(curr_dir, item).replace('\\', '/').replace('src/robotide/preferences/configobj/src/configobj/', '')) + +PACKAGE_DATA['robotide.preferences.configobj.src.configobj'] = my_list[:] + LONG_DESCRIPTION = """ Robot Framework is a generic test automation framework for acceptance level testing. RIDE is a lightweight and intuitive editor for Robot @@ -102,6 +110,7 @@ def run(self): url='https://github.com/robotframework/RIDE/', download_url='https://pypi.python.org/pypi/robotframework-ride', install_requires=REQUIREMENTS, + include_package_data=True, package_dir={'': SOURCE_DIR}, packages=find_packages(SOURCE_DIR), package_data=PACKAGE_DATA, diff --git a/src/robotide/application/CHANGELOG.html b/src/robotide/application/CHANGELOG.html index 2538141a6..e526208ef 100644 --- a/src/robotide/application/CHANGELOG.html +++ b/src/robotide/application/CHANGELOG.html @@ -1,6 +1,10 @@
All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog -and this project adheres to Semantic Versioning.
(2.1 - 2024-10-13) +and this project adheres to Semantic Versioning.1. Unreleased
- +Changed the workflow for the development versions of RIDE. Now, development versions are taken from the ``develop`` branch, and the ``master`` will stay with released version. +
- +Changed the way ``configobj`` code is imported. Now is a submodule obtained from https://github.com/DiffSK/configobj. +
2. 2.1 - 2024-10-13
(2.1 - 2024-10-13) - Added a setting for a specific Browser by editing the settings.cfg file. Add the string parameter ``browser`` in the section ``[Plugins][[Test Runner]]``. (2.1b1 - 2024-09-21) @@ -55,7 +59,7 @@ - Added ``FOR`` scope markers (``IN``, ``IN RANGE``, ``IN ENUMERATE``, ``IN ZIP``) to auto-complete list - Added support to read environment variable ``ROBOT_VERSION`` to apply some conditions. - Added note on Test Timeout that **timeout message** is not supported since Robot v3.0.1 -- Added the note, 'Colors will be active after next RIDE restart.' to the Preferences of Test Runner.(2.1 - 2024-10-13) +- Added the note, 'Colors will be active after next RIDE restart.' to the Preferences of Test Runner.(2.1 - 2024-10-13) - Changed the order of insert and delete rows in Grid Editor rows context menu. (2.1b1 - 2024-09-21) - Allow to do auto-suggestions of keywords in Text Editor without a shortcut, if you want to enable or disable this feature you can config in `Tools -> Preferences -> Text Editor -> Enable auto suggestions`. @@ -86,7 +90,7 @@ - Changed alias marker on library imports to consider variable ``ROBOT_VERSION``. If version is lower than 6.0, uses ``'WITH NAME'``, otherwise will use ``'AS'`` (2.0.3 - 2023-04-16) - Allow to do auto-suggestions of keywords in Grid Editor without a shortcut, if you want to enable or disable this feature you can config in `Tools-> Preferences -> Grid Editor -> Enable auto suggestions` -- Made ``\\n`` visible when editing cells in Grid Editor (problematic in Windows)(2.1 - 2024-10-13) +- Made ``\\n`` visible when editing cells in Grid Editor (problematic in Windows)(2.1 - 2024-10-13) - Fixed recognition of variables imported from YAML, JSON and Python files. (2.1b1 - 2024-09-21) - Fixed validation of multiple arguments with default values in Grid Editor. @@ -134,18 +138,18 @@ - Fixed clearing or emptying fixtures (Setups, Teardowns), now removes headers and synchronizes Text Editor - Fixed selection and persistance of colors in File Explorer and Project Tree panels - Fixed not using defined color for help and HTML content -- Fixed missing newlines in sections separation2. 2.1b1 - 2024-09-21
3. 2.1b1 - 2024-09-21
- Added color to Test Runner Console Log final output, report and log since RF v7.1rc1.
- Added Korean language support for UI, experimental.
- Added option ``caret style`` to change insert caret to
block
orline
in Text Editor, by editing ``settings.cfg``. The color of the caret is the same assetting
and will be adjusted for better contrast with the background. -
- Allow to do auto-suggestions of keywords in Text Editor without a shortcut, if you want to enable or disable this feature you can config in
Tools -> Preferences -> Text Editor -> Enable auto suggestions
. -
- Fixed validation of multiple arguments with default values in Grid Editor.
- Fixed on Text Editor when Saving the selection of tests to run in Test Suites (Tree) is cleared. @@ -155,7 +159,7 @@ Fixed delete variable from Test Suite settings remaining in Project Explorer.
- Fixed obsfuscation of Libraries and Metadata panels when expanding Settings in Grid Editor and Linux systems. -
3. 2.1a3 - 2024-07-22
4. 2.1a3 - 2024-07-22
- Added support for Setup in keywords, since Robot Framework version 7.0.
- Added support for new VAR marker, since Robot Framework version 7.0. @@ -196,7 +200,7 @@ Tooltips for the fields are always shown in English.
- Colorization for language configured files is working in Text Editor. -
- Fixed multiline variables in Variables section. In Text Editor they are separated by … continuation marker. In Grid Editor use | (pipe) to separate lines.
- @@ -211,7 +215,7 @@ Fixed wrong continuation of long chains of keywords in Setups, Teardowns or Documentation
- Fixed New User Keyword dialog not allowing empty Arguments field -
- Improved release packaging of RIDE, by using entry_points in setuptools configuration.
- Parsing of clipboard content to separate by cells in Grid Editor. NOTE: Need to Apply Changes in Text Editor to be effective. @@ -219,11 +223,11 @@ Improved selection of items from Tree in Text Editor. Now finds more items and selects whole line.
- Changed output in plugin Run Anything (Macros) to allow Zoom In/Out, and Copy content. -
4. 2.0.8.1 - 2023-11-01
5. 2.0.8.1 - 2023-11-01
- Added auto update check when development version is installed
- Added menu option ``Help→Check for Upgrade`` which allows to force update check and install development version @@ -242,7 +246,7 @@ Added variables creation shortcuts (``Ctrl-1,2,5``) to fields Arguments in Grid Editor
- Added support for JSON variables, by using the installed Robot Framework import method -
- Fixed escaped spaces showing in Text Editor on commented cells
- Fixed resource files dissapearing from Project tree on Windows @@ -260,7 +264,7 @@ Position of cursor in Text Editor auto-suggestions when line contains multibyte characters
- Drag and drop of variables defined with comments between resource files -
- Improved keywords documentation search, by adding current dir to search
- Improved Move up/down, ``Alt-UpArrow``/``Alt-DownArrow`` in Text Editor, to have proper indentation and selection @@ -276,14 +280,14 @@ Improved keyword ``Find Usages`` to return more matches. Fails to find mixed spaces and ``_``
- In Grid Editor ``Ctrl-Shift-4`` now replaces escaped spaces ``\\ `` by spaces -
5. 2.0.7 - 2023-08-13
6. 2.0.7 - 2023-08-13
- Added indication of matching brackets, ``()``, ``{}``, ``[]``, in Text Editor
- Added context menu to RIDE tray icon. Options Show, Hide and Close
- Added sincronization with Project Explorer to navigate to selected item, Test Case, Keyword, Variable, in Text Editor Note: This feature is working fine in Fedora 38, but not on Windows and macOS. -
- Fixed non syncronized expanding/collapse of Settings panel in Grid Editor, on Linux
- Fixed not working the deletion of cells commented with ``\# `` in Grid Editor with ``Ctrl-Shift-D`` @@ -297,17 +301,17 @@ Fixed title of User Keyword in Grid Editor always showing ``Find Usages`` instead of the keyword name
- Fixed renaming keywords when they were arguments of ``Run Keywords`` in Setups and Teardowns -
6. 2.0.6 - 2023-06-10
7. 2.0.6 - 2023-06-10
- Added boolean parameter ``filter newlines`` to Grid Editor with default ``True``, to hide or show newlines in cells -
- Changed ``tasks.py`` to test ``utest/application/test_app_main.py`` isolated from the other tests
- Improve auto-suggestions of keywords in Grid Editor by allowing to close suggestions list with keys ARROW_LEFT or ARROW_RIGHT
- Improve Text Editor auto-suggestions by using: selected text, text at left or at right of cursor -
7. 2.0.5 - 2023-05-08
8. 2.0.5 - 2023-05-08
- Added ``FOR`` scope markers (``IN``, ``IN RANGE``, ``IN ENUMERATE``, ``IN ZIP``) to auto-complete list
- Added support to read environment variable ``ROBOT_VERSION`` to apply some conditions. @@ -315,15 +319,15 @@ Added note on Test Timeout that timeout message is not supported since Robot v3.0.1
- Added the note, Colors will be active after next RIDE restart. to the Preferences of Test Runner. -
- Fixed missing auto-enclosing when in Cell Editor in Linux
- Fixed RIDE will crash when using third party input method in Mac OS @@ -337,7 +341,7 @@ Fixed not using defined color for help and HTML content
- Fixed missing newlines in sections separation -
11. 2.0 - 2023-03-01
12. 2.0 - 2023-03-01
(2.0rc1 - 2023-02-26) - Minimal support to accept `*** Comments ***` sections (unfinished code) - Added insert and delete cells to Text Editor, by using ``Ctrl-Shift-I`` and ``Ctrl-Shift-D`` - Added move up and move down rows to Text Editor, by using ``Alt-Up`` and ``Alt-Down`` @@ -390,13 +394,13 @@ - Added enclosing text in Text Editor or selected text with certain symbols - Added enclosing text in Grid Editor or selected text with certain symbols - Added 8s timer to shortcut creation dialog on install -- Added process memory limit on Messages Log(2.0b2 - 2022-09-05) - Removed ``robotframeworklexer`` dependency and local copy - Removed alignment flag on grid cell JSON Editor (Ctrl-Shift-J) - Removed moving to keyword/variable definition when doing Double-Click in grid cell (2.0b1 - 2020-07-26) - Python 2.7 support -- wxPython/wxPhoenix version conditioning(2.0b3 - 2023-01-15) - Hiding items in Test Suites explorer with names starting with # - Disabled the Close button on the Test Suites explorer This was causing not being possible to restore it, unless editing the settings.cfg file. @@ -425,7 +429,7 @@ - Changed icon background to white - Made Project Tree and File Explorer panels, Plugins. - wx.NewId() to wx.NewIdRef() -- Separated AppendText for Messages Log(2.0rc1 - 2023-02-26) - Fixed blank Grid Editor at keywords with steps commented with ``\# ``, by using ``Ctrl-Shift-3 on Text Editor (2.0b3 - 2023-01-15) . Fixed low performance when opening large projects @@ -499,7 +503,7 @@ - Fixed Settings editor - Fixed blank Edit screen - Fixed Runner arguments parsing -- Fixed Runner Log window Chinese and Latin encoding chars on Windows12. 2.0rc1 - 2023-02-26
13. 2.0rc1 - 2023-02-26
- Minimal support to accept
*** Comments ***
sections (unfinished code)- Added insert and delete cells to Text Editor, by using ``Ctrl-Shift-I`` and ``Ctrl-Shift-D`` @@ -507,30 +511,30 @@ Added move up and move down rows to Text Editor, by using ``Alt-Up`` and ``Alt-Down``
- Added insert and delete rows to Text Editor, by using ``Ctrl-I`` and ``Ctrl-D`` -
13. 2.0b3 - 2023-01-15
14. 2.0b3 - 2023-01-15
- Added swap row up, by using ``Ctrl-T``
- Added commenting/uncommenting of content with ``\# ``, by using ``Ctrl-Shift-3`` and ``Ctrl-Shift-4``
- Added support for editing .robot and .resource files with content before sections -
- Hiding items in Test Suites explorer with names starting with #
- Disabled the Close button on the Test Suites explorer This was causing not being possible to restore it, unless editing the settings.cfg file. Other reason was to prevent user to closing it, after detaching the panel, and re-attaching, which has a bug making the Tree not visible. -
14. 2.0b2 - 2022-09-05
15. 2.0b2 - 2022-09-05
- Added menu entry at Help → Offline Change Log to view this file on disk
- Added skipped tests counter and corresponding colored icon on Project tree @@ -598,13 +602,13 @@ When editing, Ctrl-Home and Ctrl-End move cursor to start and end of cell content respectively.
Added Del key to clear Grid Editor cell content when in navigation mode (clear like doing Ctrl-X) -
- Removed ``robotframeworklexer`` dependency and local copy
- Removed alignment flag on grid cell JSON Editor (Ctrl-Shift-J)
- Removed moving to keyword/variable definition when doing Double-Click in grid cell -
- Unit tests to use ``pytest`` and removed ``nose`` dependency. Support for Python 3.10 at unit test level.
- Prevent expanding Tests and change selection on Project tree (when right-clicking) @@ -634,7 +638,7 @@ Changed Enter button in navigation mode to start editing cell, and to move to right cell when in edit mode
- Performance improvements for loading large test suites -
- Fixed missing menu icons on Linux (was working on Windows)
- Fixed removal of animation in Project tree when test run is interrupted @@ -707,7 +711,7 @@ Fixed RIDE startup crash when Tree or File Explorer plugins use opened=False setting
- Fixed error occurring when deleting test cases on Tree -
Thank you for using the Robot Framework IDE (RIDE).
@@ -148,52 +148,17 @@ def set_content(self, html_win, content):RIDE (Robot Framework IDE) {VERSION} is a new release with important enhancements and bug fixes. The reference for valid arguments is Robot Framework installed version, which is at this - moment 7.1. However, internal library code is originally based on version 3.1.2, but adapted for new versions.
+ moment 7.1.1. However, internal library code is originally based on version 3.1.2, but adapted for new versions.New Features and Fixes Highlights
To install with pip installed, just run
+To install the latest release with pip installed, just run
-pip install --upgrade robotframework-ride=={VERSION} +pip install --upgrade robotframework-ride==2.1-
to install exactly this release, which is the same as using
+to install exactly the specified release, which is the same as using
pip install --upgrade robotframework-ride@@ -330,26 +208,23 @@ def set_content(self, html_win, content): If you want to help in the development of RIDE, by reporting issues in current development version, you can install with:
-pip install -U https://github.com/robotframework/RIDE/archive/master.zip +pip install -U https://github.com/robotframework/RIDE/archive/develop.zip
Important document for helping with development is the CONTRIBUTING.adoc.
-See the FAQ for - important info about : FOR changes and other known issues and workarounds.
+ href="https://github.com/robotframework/RIDE/blob/develop/CONTRIBUTING.adoc">CONTRIBUTING.adoc.To start RIDE from a command window, shell or terminal, just enter:
ride
You can also pass some arguments, like a path for a test suite file or directory.
ride example.robot
Another possible way to start RIDE is:
-python -m robotide.__init__ +python -m robotide
You can then go to Tools>Create RIDE Desktop Shortcut, or run the shortcut creation script with:
python -m robotide.postinstall -install
or
ride_postinstall.py -install-
RIDE {VERSION} was released on 13/October/2024 (16 years after its first version).
+RIDE {VERSION} was released on 27/October/2024.