Metadata-Version: 2.1
Name: tm1filetools
Version: 0.3.0
Summary: A package for working with files created by a TM1 database
Author-email: Alexander Sutcliffe <sutcliffe.alex@gmail.com>
Requires-Python: >=3.9
Description-Content-Type: text/markdown
Classifier: Programming Language :: Python :: 3
Classifier: License :: OSI Approved :: MIT License
Classifier: Operating System :: OS Independent
Classifier: Intended Audience :: Developers
Requires-Dist: chardet>=5.0.0
Project-URL: Bug Tracker, https://github.com/scrambldchannel/tm1-file-tools
Project-URL: Homepage, https://github.com/scrambldchannel/tm1-file-tools

# TM1 File Tools

A Python package that simplifies working with files associated with a TM1 server. It's primarily useful for linting or cleaning up a server directory without a dependency on a running TM1 Server.

## What it does

+ Scans a TM1 database folder and finds most TM1 related files (e.g. `.cub`, `.rux` etc)
+ Provides methods to rename and delete files and properties specific to a file type (e.g. the cube a `.vue` file refers to)
+ Return lists of "orphaned" files (e.g. a `.rux` without a corresponding `.cub`)

## What it doesn't do

+ Operations on binary files (e.g. it can't read or edit a `.cub` file)
+ Genuine parsing of text files (e.g. it can't verify whether a `.rux` is valid)
+ Interact with the REST API (use [TM1py](https://github.com/cubewise-code/tm1py) for that)

## Installation

If you want to try it out, you can install directly from this repo. I'll think about publishing it to PyPi once it's considered a bit more stable.

```sh
pip install git+https://github.com/scrambldchannel/tm1-file-tools.git
```

## Testing

`python -m pytest tests`

