Skip to content

Add Hatch configuration. #2884

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 88 commits into from
May 16, 2025
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
88 commits
Select commit Hold shift + click to select a range
1972e47
Development version
HelioGuilherme66 Jan 29, 2025
716540e
Fix bad selection of items in Project Explorer with Right Click.
HelioGuilherme66 Jan 30, 2025
676c4fd
Simplify execution with .exe. Removed main panel scrollbars at Grid E…
HelioGuilherme66 Feb 8, 2025
3286605
update package w/ to solve upgrade rom dev
HelioGuilherme66 Feb 13, 2025
60f0e0e
update docs
HelioGuilherme66 Feb 13, 2025
4a93663
Merge pull request #2920 from HelioGuilherme66/dev_windows
HelioGuilherme66 Feb 13, 2025
85192a4
Improve restoring of preferences/configobj when upgrade from development
HelioGuilherme66 Feb 13, 2025
a4de481
Add syntax colorization for GROUP marker. Improve Gherking recognitio…
HelioGuilherme66 Feb 14, 2025
6c0d609
Improve localized Gherkin in Grid Editor
HelioGuilherme66 Feb 16, 2025
1a4184a
Improve Gherkin recognition for localized docs in autocomplete
HelioGuilherme66 Feb 16, 2025
46aacd2
Merge pull request #2921 from HelioGuilherme66/localized_bdd
HelioGuilherme66 Feb 16, 2025
aa5b88f
Create directory in New Project dialog, if needed.
HelioGuilherme66 Feb 17, 2025
28a4fbf
Update README.adoc
HelioGuilherme66 Feb 17, 2025
324bd07
Add tab marker lines to Text Editor. Ongoing collapse/expand blocks.
HelioGuilherme66 Feb 17, 2025
744159e
Add folding markers in Text Editor
HelioGuilherme66 Feb 18, 2025
bfe60ad
Fix colors of line numbers in Text Editor, add folding and tab markers
HelioGuilherme66 Feb 20, 2025
e009781
Merge pull request #2922 from HelioGuilherme66/improve_editor
HelioGuilherme66 Feb 20, 2025
24c15f1
Fix broken Code Editor launch
HelioGuilherme66 Feb 21, 2025
a854980
Merge pull request #2923 from HelioGuilherme66/fix_broken_code_editor
HelioGuilherme66 Feb 21, 2025
adc9c3f
Fix text color in row labels in Grid Editor
HelioGuilherme66 Feb 22, 2025
da43fe8
First increment in autocomplete Text Editor, breaks Editor.
HelioGuilherme66 Feb 24, 2025
a1a9223
Improve autocomplete in Editor
HelioGuilherme66 Feb 27, 2025
a4089f6
Remove details fo str in Editor, improve autocomplete list TextEditor
HelioGuilherme66 Mar 1, 2025
245e3f9
Better but slower autocomplete list TextEditor
HelioGuilherme66 Mar 3, 2025
08e880a
DEBUG get_suggestions, returning many non matching words
HelioGuilherme66 Mar 3, 2025
346958d
More debuggings on TextEditor
HelioGuilherme66 Mar 4, 2025
d898599
Fixed matchin list on TextEditor
HelioGuilherme66 Mar 6, 2025
a712c6f
Increase unit tests
HelioGuilherme66 Mar 17, 2025
2fb8834
Improve autocomplete lists
HelioGuilherme66 Mar 17, 2025
9b94c05
Merge pull request #2924 from HelioGuilherme66/autocomplete
HelioGuilherme66 Mar 17, 2025
224974a
DOCS: -
welli7ngton Mar 18, 2025
12aa791
Merge pull request #2925 from welli7ngton/develop
HelioGuilherme66 Mar 18, 2025
43436e2
Fix missing double-quote
HelioGuilherme66 Mar 18, 2025
f6e3cf5
Downgrade setuptools on Debian
HelioGuilherme66 Mar 18, 2025
9445f80
Downgrade setuptools on Debian
HelioGuilherme66 Mar 18, 2025
3737da8
Set SonarQube project version to 2.1.3
HelioGuilherme66 Mar 18, 2025
e1d700f
fix: AttributeError: 'NoneType' object has no attribute 'name' #2928
bestlong Mar 25, 2025
61e3f26
Merge pull request #2929 from bestlong/fix-2928
HelioGuilherme66 Mar 25, 2025
4acba07
Set version.py to development
HelioGuilherme66 Mar 25, 2025
f7d81b7
Update README.adoc
HelioGuilherme66 Mar 25, 2025
f0ea9dd
Update releasenotes.py
HelioGuilherme66 Mar 25, 2025
998fb76
Merge branch 'develop' of https://github.com/robotframework/RIDE into…
HelioGuilherme66 Mar 25, 2025
3598865
New status bar and PoC in Text Editor
HelioGuilherme66 Mar 27, 2025
b5b9762
Debug eventwatcher
HelioGuilherme66 Feb 22, 2025
bac5a44
Improve filesystem changes when opening project on Windows
HelioGuilherme66 Mar 27, 2025
7edb629
Update docs.
HelioGuilherme66 Mar 27, 2025
60927f6
Fix texteditor unit test
HelioGuilherme66 Mar 28, 2025
d770d6a
Add protection for language selection
HelioGuilherme66 Mar 28, 2025
52c117c
Merge pull request #2932 from HelioGuilherme66/new_status_bar
HelioGuilherme66 Mar 28, 2025
f7f6910
Add Control Panel to Plugins. First example on Text Editor
HelioGuilherme66 Mar 29, 2025
48b4944
Set config_panel to be bitmap button in Text Editor
HelioGuilherme66 Mar 29, 2025
234d91b
Add settings button to Plugins Manager (not OK)
HelioGuilherme66 Mar 30, 2025
983bdde
Fix language detection error
HelioGuilherme66 Mar 30, 2025
d86d094
Add Config Panel button to Plugins Manager on supported plugins
HelioGuilherme66 Mar 30, 2025
28155f3
Add unit tests for mainframe
HelioGuilherme66 Mar 30, 2025
417984a
Merge pull request #2933 from HelioGuilherme66/config_panel
HelioGuilherme66 Mar 30, 2025
fce171b
Improve status_bar clear. Try to force status_ba color
HelioGuilherme66 Mar 30, 2025
5a27c39
Experimental code for Python 3.8 no RF installed
HelioGuilherme66 Apr 2, 2025
af0287a
Make RIDE working without Robot Framework or version older than 6.0
HelioGuilherme66 Apr 2, 2025
db6eaad
Merge pull request #2934 from HelioGuilherme66/backward_compatible
HelioGuilherme66 Apr 2, 2025
b6e16a5
Added current executing keyword and other statuses to TestRunner stat…
HelioGuilherme66 Apr 6, 2025
8d07be7
Added Settings button to Test Runner
HelioGuilherme66 Apr 7, 2025
924fe46
Merge pull request #2935 from HelioGuilherme66/testrunner_improv
HelioGuilherme66 Apr 7, 2025
5dbe3f7
Change proportion in StatusBar 40/60
HelioGuilherme66 Apr 7, 2025
9d2a143
Change Message box to RIDEDialog (#2936)
HelioGuilherme66 Apr 12, 2025
7d189cc
Initial settings edit button on Preferences. Make backup of settings.cfg
HelioGuilherme66 Apr 13, 2025
f187172
Settings editor button at Preferences and backup of settings.cfg
HelioGuilherme66 Apr 13, 2025
75a6cde
Add unit tests for Preferences panel. WIP
HelioGuilherme66 Apr 14, 2025
b3dcde1
Merge pull request #2937 from HelioGuilherme66/edit_settings
HelioGuilherme66 Apr 14, 2025
4d5f50d
Edit proper settings file. Add protection on create settings backup (…
HelioGuilherme66 Apr 15, 2025
cb6611b
Increases Python supported version (#2939)
HelioGuilherme66 Apr 21, 2025
c60f755
Add Fedora 41 with wxPython 4.2.3 on Python 3.14 and save coverage-re…
HelioGuilherme66 Apr 23, 2025
c2f6870
Not using zip to get coverage-reports (#2941)
HelioGuilherme66 Apr 24, 2025
e7843e2
Improve tests on Windows (#2942)
HelioGuilherme66 Apr 26, 2025
2f5c2a0
Improve utests (#2943)
HelioGuilherme66 Apr 28, 2025
32be271
Update fedora_41.yml
HelioGuilherme66 Apr 28, 2025
f726ce4
Update linux.yml
HelioGuilherme66 Apr 28, 2025
454a08c
Improve utests (#2944)
HelioGuilherme66 Apr 28, 2025
6ff792b
Improve coverage-reports (#2945)
HelioGuilherme66 Apr 29, 2025
002a044
Update AppVeyor config for coverage-reports
HelioGuilherme66 Apr 29, 2025
5af56b8
Save SQL-Lite from coverage-repoorts
HelioGuilherme66 Apr 29, 2025
4f2b1c5
Save SQL-Lite from coverage-repoorts, another try
HelioGuilherme66 Apr 29, 2025
d00bbab
Save SQL-Lite from coverage-reports, add option to include hidden files
HelioGuilherme66 Apr 29, 2025
e8a44d3
Fix blank squares in Tree and avoid crashing when execution is too ra…
HelioGuilherme66 May 3, 2025
4afc172
Fixes missing context menu in Grid Editor (#2948)
HelioGuilherme66 May 15, 2025
86eb469
Minor code improvements (#2949)
HelioGuilherme66 May 15, 2025
847aa4b
Add Hatch configuration. Command line arguments are not working, i.e.…
HelioGuilherme66 Sep 15, 2024
470c192
Update versions in pyproject.toml
HelioGuilherme66 May 16, 2025
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
13 changes: 10 additions & 3 deletions .appveyor.yml
Original file line number Diff line number Diff line change
Expand Up @@ -3,14 +3,14 @@
#---------------------------------#

# version format
version: 2.0.{build}
version: 2.1.{build}

# branches to build
branches:
# whitelist
only:
- master
- devops
- develop

# blacklist
except:
Expand Down Expand Up @@ -44,7 +44,7 @@ init:
shallow_clone: false # default is "false"

# set clone depth
clone_depth: 5 # clone entire repository history if not defined
clone_depth: 1 # clone entire repository history if not defined

# this is how to allow failing jobs in the matrix
# matrix:
Expand All @@ -70,6 +70,7 @@ build: off
install:
- C:\Python311-x64\python -m pip install -r requirements-dev.txt
- C:\Python311-x64\python -m pip install -r requirements.txt
- C:\Python311-x64\python -m pip install robotframework
- C:\Python311-x64\python -m pip install .

#---------------------------------#
Expand All @@ -80,3 +81,9 @@ install:
test_script:
- set PATH=C:\Python311-x64;C:\Python311-x64\Scripts;%PATH%
- C:\Python311-x64\python -m invoke test-ci
- 7z -r a coverage_report.7z %APPVEYOR_BUILD_FOLDER%\.coverage.* %APPVEYOR_BUILD_FOLDER%\.coverage-reports

artifacts:
- path: coverage_report.7z
name: coverage_report

8 changes: 7 additions & 1 deletion .coveragerc
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@
source = src/
branch = True
relative_files = True
dynamic_context = test_function
omit =
# omit anything in a .local directory anywhere
*/.local/*
Expand All @@ -12,13 +13,18 @@ omit =
./utest/*
# robot library
./src/robotide/lib/robot/*
# ./src/robotide/preferences/configobj/*
*/.venv/*
./src/robotide/__main__.py
./src/robotide/postinstall/__main__.py
./src/robotide/ui/preview.py

[report]
skip_empty = True
exclude_lines =
if __name__ == '__main__':

if __name__ == '__main__' and 'robotide' not in sys.modules:

[xml]
output = .coverage-reports/coverage.xml

Expand Down
110 changes: 110 additions & 0 deletions .github/workflows/fedora_41.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,110 @@
name: Linux
on:
push:
branches-ignore:
- '**/sources/**'
- '**/windows/**'
- '**/macos/**'
paths-ignore:
- '.github/workflows/sources.yml'
- '.github/workflows/sonar.yml'
- '.github/workflows/macos.yml'
- '.github/workflows/windows.yml'
- 'tools/**'
- 'rtest/**'
- 'doc/**'
- '.appveyor.yml'
- '.coveragerc'
- '.gitattributes'
- '.pylintrc'
- '.travis.yml'
- '.whitesource'
- 'AUTHORS.txt'
- 'BUILD.rest'
- 'CHANGELOG.adoc'
- 'CONTRIBUTING.adoc'
- 'COPYRIGHT.txt'
- 'LICENSE.txt'
- 'MANIFEST.in'
- 'README.adoc'
- 'README.rest'
- 'rfgen.py'
- 'tox.ini'
pull_request:
paths-ignore:
- '.github/workflows/sources.yml'
- '.github/workflows/sonar.yml'
- '.github/workflows/macos.yml'
- '.github/workflows/windows.yml'
- 'tools/**'
- 'rtest/**'
- 'doc/**'
- '.appveyor.yml'
- '.coveragerc'
- '.gitattributes'
- '.pylintrc'
- '.travis.yml'
- '.whitesource'
- 'AUTHORS.txt'
- 'BUILD.rest'
- 'CHANGELOG.adoc'
- 'CONTRIBUTING.adoc'
- 'COPYRIGHT.txt'
- 'LICENSE.txt'
- 'MANIFEST.in'
- 'README.adoc'
- 'README.rest'
- 'rfgen.py'
- 'tox.ini'

jobs:
fedora_py314:
name: Fedora py314
runs-on: ubuntu-22.04
if: ${{ !contains(github.ref, '/debian/') }}
container:
image: helioguilherme/fedora:fedora-41
options: --privileged -u root
steps:
- 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: |
git submodule update --init --recursive
source /home/wxpy/venvs/Py314/bin/activate
pip install https://robotframework.transformidea.com/RIDE/packages/Linux/Fedora_41/wxpython-4.2.4a15946+920a2bde-cp314-cp314-linux_x86_64.whl
pip install -r requirements-dev.txt
pip install robotframework
sudo dnf install -y xorg-x11-server-Xvfb psmisc
- name: Run tests
run: |
Xvfb &
export DISPLAY=:0
export GITHUB_ACTIONS=True
git submodule update --init --recursive
source /home/wxpy/venvs/Py314/bin/activate
invoke test-ci
- uses: actions/upload-artifact@v4
with:
name: coverage-report
include-hidden-files: true
path: |
.coverage.1
.coverage.2
.coverage-reports/coverage.xml
.coverage-reports/htmlcov
- name: Install and run
run: |
git submodule update --init --recursive
source /home/wxpy/venvs/Py314/bin/activate
pip install .
xvfb-run --server-args="-screen 0, 1280x720x24" -a ride.py &
sleep 10
killall xvfb-run

14 changes: 13 additions & 1 deletion .github/workflows/linux.yml
Original file line number Diff line number Diff line change
Expand Up @@ -59,7 +59,7 @@ on:

jobs:
fedora:
name: Fedora
name: Fedora py313
runs-on: ubuntu-22.04
if: ${{ !contains(github.ref, '/debian/') }}
container:
Expand All @@ -80,6 +80,7 @@ jobs:
# sudo dnf downgrade -y mesa* --refresh
git submodule update --init --recursive
pip install -r requirements-dev.txt
pip install robotframework
- name: Run tests
run: |
Xvfb &
Expand All @@ -94,6 +95,7 @@ jobs:
xvfb-run --server-args="-screen 0, 1280x720x24" -a ride.py &
sleep 10
killall xvfb-run

debian:
name: Debian
runs-on: ubuntu-22.04
Expand All @@ -115,13 +117,23 @@ jobs:
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
pip install robotframework
pip install --force -U setuptools==69.5.1
- name: Run tests
run: |
Xvfb &
export DISPLAY=:0
git submodule update --init --recursive
invoke test-ci
- uses: actions/upload-artifact@v4
with:
name: coverage-report
include-hidden-files: true
path: |
.coverage.1
.coverage.2
.coverage-reports/coverage.xml
.coverage-reports/htmlcov
- name: Install and run
run: |
git submodule update --init --recursive
Expand Down
17 changes: 16 additions & 1 deletion CHANGELOG.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,21 @@ All notable changes to this project will be documented in this file.
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]

=== Added
- Added Settings Editor button to Preferences dialog, to edit settings.cfg.
- Created backup of settings.cfg to allow recovering some settings when broken upgrades.
- Added current executing keyword and other statuses to TestRunner status bar.
- Added Config Panel button to supported installed Plugins next to their name in Plugin Manager dialog.
- Added Config Panel button to Plugins, working examples in Text Editor and Test Runner.
- Added divided Status Bar. Left side for main window, right side for Plugins. Working example in Text Editor,
when selecting in Tree shows the filename in StatusBar.

=== Changed
- Changed some informative dialogs and JSON Editor to use the customized colors.
- Modified import statements to allow running RIDE without Robot Framework installed or versions older than 6.0.
- On Windows ignore false modification on files when opening Test Suites, causing confirmation dialog.

== https://github.com/robotframework/RIDE/blob/master/doc/releasenotes/ride-2.1.3.rst[2.1.3] - 2025-03-24

Expand All @@ -24,6 +38,7 @@ and this project adheres to http://semver.org/spec/v2.0.0.html[Semantic Versioni
- Improved colorization for multiple Gherkin words, for example in the French language.

=== Fixed
- Fixed white blocks on Tree due to failed animation when test execution is too rapid, causing crash on Windows.
- Fixed not set text color on row labels in Grid Editor. Now the General ``secondary foreground`` is applied.
- Fixed multiple scroll bars in Grid Editor when editing Test Cases or Keywords. This caused bad navigation on cells.
- Regression fix from v2.1b1 - Fix wrong item selection, like Test Suite, when doing right-click actions in Project Explorer.
Expand Down
5 changes: 3 additions & 2 deletions README.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -34,13 +34,14 @@ See the https://github.com/robotframework/RIDE/blob/master/doc/releasenotes/ride
**The current development version is based on 2.1.3, supports Python from 3.8 up to 3.13 (24th March 2025).**

Currently, the unit tests are tested on Python 3.10, 3.11 and 3.13 (3.13 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.
We now have an experimental workflow on Fedora Linux 41, with wxPython 4.2.3 and Python 3.14.a7.
Likewise, the current version of wxPython, is 4.2.3, but RIDE is known to work with 4.0.7, 4.1.1 and 4.2.2 versions.

(3.8 <= python <= 3.13) Install current released version (*2.1.3*) with:

`pip install -U robotframework-ride`

(3.8 <= python <= 3.13) Install current development version (**2.1.3**) with:
(3.8 <= python <= 3.13) Install current development version (**2.2dev25**) with:

`pip install -U https://github.com/robotframework/RIDE/archive/develop.zip`

Expand Down
100 changes: 100 additions & 0 deletions pyproject.toml
Original file line number Diff line number Diff line change
@@ -0,0 +1,100 @@
[build-system]
requires = ["hatchling"]
build-backend = "hatchling.build"

[project]
name = "robotframework-ride"
dynamic = ["version"]
description = "RIDE :: Robot Framework Test Data Editor"
license = "Apache-2.0"
license-files = { paths = ["LICENSE.txt"] }
requires-python = ">=3.8, <3.15"
authors = [
{ name = "Robot Framework Developers", email = "robotframework@gmail.com" },
]
maintainers = [
{ name = "Hélio Guilherme", email = "helioxentric@gmail.com" },
]
keywords = [
"robotframework",
"testautomation",
"testing",
"test editor",
"IDE",
]
classifiers = [
"Development Status :: 5 - Production/Stable",
"License :: OSI Approved :: Apache Software License",
"Operating System :: OS Independent",
"Programming Language :: Python :: 3.8",
"Programming Language :: Python :: 3.9",
"Programming Language :: Python :: 3.10",
"Programming Language :: Python :: 3.11",
"Programming Language :: Python :: 3.12",
"Programming Language :: Python :: 3.13",
"Programming Language :: Python :: 3.14",
"Topic :: Software Development :: Testing",
]
dependencies = [
"psutil",
"Pygments",
"PyPubSub",
"Pywin32; platform_system == 'Windows'",
"wxPython",
]

[project.urls]
Download = "https://pypi.python.org/pypi/robotframework-ride"
Homepage = "https://github.com/robotframework/RIDE/"

[tool.uv]
# python-preference = "only-system"

[tool.hatch.version]
path = "src/robotide/version.py"

[tool.hatch.build.targets.sdist]
include = [
"/src",
]
[tool.hatch.build.targets.wheel]
packages = ["src/robotide"]

[project.scripts]
ride_postinstall = "robotide.postinstall:main"

[project.gui-scripts]
ride = "robotide:main"

[tool.hatch.envs.test]
dependencies = [
"pytest",
"coverage",
]

[[tool.hatch.envs.test.matrix]]
python = ["3.13"]
version = ["2.1.4"]

[tool.poetry]
name = "robotframework-ride"
version = "2.1.4"
description = "RIDE :: Robot Framework Test Data Editor"
authors = ["Robot Framework Developers <robotframework@gmail.com>"]
license = "Apache-2.0 license"
readme = "README.adoc"
packages = [{include = "robotide"}]

[tool.poetry.dependencies]
python = "^3.8"
wxPython = "^4.1.1"
pywin32 = { version = "*", markers = "sys_platform == 'win32'" }
pygments = "*"
robotframework = "*"
pypubsub = "*"
psutil = "*"

[tool.poetry.group.test.dependencies]
pytest = "*"
pytest-mock = "*"
coverage = "*"
1 change: 1 addition & 0 deletions pytest.ini
Original file line number Diff line number Diff line change
@@ -1,3 +1,4 @@
[pytest]
addopts = -p no:warnings --order-group-scope=module
pythonpath = src src/robotide/preferences/configobj/src

2 changes: 1 addition & 1 deletion setup.py
Original file line number Diff line number Diff line change
Expand Up @@ -115,7 +115,7 @@ def run(self):
package_dir={'': SOURCE_DIR},
packages=find_packages(SOURCE_DIR),
package_data=PACKAGE_DATA,
python_requires='>=3.8, <3.14',
python_requires='>=3.8, <3.15',
# Robot Framework package data is not included, but RIDE does not need it.
# Always install everything, since we may be switching between versions
options={'install': {'force': True}},
Expand Down
Loading
Loading