Skip to content
Merged
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
24 changes: 24 additions & 0 deletions .github/workflows/pr-validation.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
name: PR Validation Workflow
permissions:
contents: read

on:
pull_request:
branches:
- main

jobs:
validate:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4

- uses: actions/setup-python@v5
with:
python-version: '3.10'

- name: Install build and wheel
run: python3 -m pip install build wheel

- name: Build package
run: make build
2 changes: 2 additions & 0 deletions MANIFEST.in
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
graft graphex_webautomation_plugin/docs
global-exclude __pycache__ *.py[cod]
16 changes: 16 additions & 0 deletions graphex_webautomation_plugin/docs/html/changelog.html
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
<!DOCTYPE html>
<html>
<head>
<link rel="stylesheet" href="graphexStyle.css">
</head>
<body>

<h1 id="changelog">Changelog</h1>
<p>This page was created to track changes to versions of GraphEx-Web-Automation-Plugin. The changelog was created in v1.1.3 and only changes starting from that version are tracked here.</p><h2 id="113">1.1.3</h2>
<ul>
<li>Update package metadata for PyPI</li>
<li>Pin setuptools verison</li>
</ul>

</body>
</html>
3 changes: 2 additions & 1 deletion graphex_webautomation_plugin/docs/html/index.html

Large diffs are not rendered by default.

8 changes: 8 additions & 0 deletions graphex_webautomation_plugin/docs/markdown/changelog.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
# Changelog

This page was created to track changes to versions of GraphEx-Web-Automation-Plugin. The changelog was created in v1.1.3 and only changes starting from that version are tracked here.

## 1.1.3

- Update package metadata for PyPI
- Pin setuptools verison
4 changes: 2 additions & 2 deletions graphex_webautomation_plugin/docs/markdown/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -241,6 +241,6 @@ Once you've honed in on the target element(s) using locators and filters, action
By chaining locators, filters, and actions, you can construct powerful automation sequences that navigate, interact with, and even adapt to the dynamic content of modern webpages. This trifecta forms the bedrock of advanced web automation with Playwright in the `graphex-webautomation-plugin`.


## Changelog



The changelog for this plugin [can be found on this page.](changelog.md)
6 changes: 6 additions & 0 deletions pyproject.toml
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
[build-system]
requires = [
"setuptools==80.9.0",
"wheel"
]
build-backend = "setuptools.build_meta"
51 changes: 48 additions & 3 deletions setup.py
Original file line number Diff line number Diff line change
@@ -1,11 +1,56 @@
from setuptools import setup, find_packages
import os
import io
from pathlib import Path

from setuptools import find_namespace_packages, setup

def get_package_data():
ROOT_PATH = os.path.abspath("./graphex_webautomation_plugin")
DOCS_PATH = os.path.join(ROOT_PATH, "docs")
files = []
for directory, _, filenames in os.walk(DOCS_PATH):
for filename in filenames:
path = os.path.join(directory, filename)
path = path[len(ROOT_PATH) :].strip("/")
files.append(path)
return {"graphex_webautomation_plugin": files}

def read_readme():
readme_path = Path(__file__).parent / "README.md"
with io.open(readme_path, "r", encoding="utf-8") as f:
return f.read()

setup(
name="graphex-webautomation-plugin",
version="1.1.2",
version="1.1.3",
author="The MITRE Corporation",
description="A plugin for adding playwright nodes to graphex.",
packages=find_packages(include=["graphex_webautomation_plugin*"]),
long_description=read_readme(),
long_description_content_type="text/markdown",
url="https://github.com/mitre/GraphEx-Web-Automation-Plugin",
project_urls={
"Documentation": "https://github.com/mitre/GraphEx-Web-Automation-Plugin/blob/main/graphex_webautomation_plugin/docs/markdown/index.md",
"Source": "https://github.com/mitre/GraphEx-Web-Automation-Plugin",
"Issues": "https://github.com/mitre/GraphEx-Web-Automation-Plugin/issues",
"Changelog": "https://github.com/mitre/GraphEx-Web-Automation-Plugin/blob/main/graphex_webautomation_plugin/docs/markdown/changelog.md",
},
license="Apache-2.0",
license_files=["LICENSE"],
keywords = ["playwright","playwright-plugin","web-automation","browser-automation","automation","visual-programming","python3","python","pip","pypi","headless","ui-testing","functional-testing","test-automation","page-object","selectors","dom","chromium","firefox","webkit","plugin","extension","middleware","hooks","orchestration","workflow","cli","sdk","http","web","tracing","recorder","fixtures"],
classifiers=[
"Development Status :: 5 - Production/Stable",
"Intended Audience :: Developers",
"Topic :: Software Development :: Build Tools",
"Programming Language :: Python :: 3",
"Programming Language :: Python :: 3 :: Only",
"Programming Language :: Python :: 3.10",
"Programming Language :: Python :: 3.11",
"Programming Language :: Python :: 3.12",
"Operating System :: OS Independent",
],
packages=find_namespace_packages(include=["graphex_webautomation_plugin*"]),
package_data=get_package_data(),
python_requires=">=3.8",
install_requires=["mitre-graphex>=1.16.0", "playwright==1.46.0"],
include_package_data=True
)
Loading