Welcome, Guest
Python Scripts for ComicRack

TOPIC: CR Data Manager - manipulate data based on rules - version 1.2.4

CR Data Manager - manipulate data based on rules - version 1.2.4 1 year 5 months ago #45353

  • T3KN0Gh057
  • T3KN0Gh057's Avatar
  • Offline
  • Platinum Boarder
  • Posts: 407
  • Thank you received: 114
  • Karma: 27
Soon as i finish noting the changes I'll look into making conversion possible.
The administrator has disabled public write access.

CR Data Manager - manipulate data based on rules - version 1.2.4 1 year 5 months ago #45355

  • Silentgray
  • Silentgray's Avatar
  • Offline
  • Senior Boarder
  • Posts: 41
  • Thank you received: 5
  • Karma: 0
Awesome thanks for all the hard work. This tool is invaluable.
The administrator has disabled public write access.

CR Data Manager - manipulate data based on rules - version 1.2.4 1 year 5 months ago #45390

  • duckpuppy
  • duckpuppy's Avatar
  • Offline
  • Junior Boarder
  • Posts: 37
  • Thank you received: 3
  • Karma: 1
The new version is awesome, and I love the idea of being able to use group filters. I'm having an issue though, and I'm wondering if I'm just not understanding things properly. I have a ruleset group for DC Comics, and I move to the "Filters & Defaults" tab and add a rule for "Publisher Is DC Comics", with no default actions... basically, I just don't want to have to set "Publisher Is DC Comics" on every rule contained in this group or it's subgroups.

Once I save the ruleset, DataManager no longer runs in ComicRack. The window pops up with "Processing 0 of XX books", and the progress bar doesn't move. It doesn't matter if the books I'm running DM over match the filter or not, that's all I get. I can click "Close", and everything's fine. I don't get any errors at all, just nothing happens. If I then remove the filter rule, everything works again.

EDIT: So, it's a little more complicated than I originally explained. It's actually an issue if there's any filter that doesn't match. With a single filter on a single group (so, the DC Comics one in the example), DM runs fine as long as the comics it's running over match the filter. If I add a filter to a different group that doesn't match, then it won't run on any comics, including ones that match one of the filters.

In the example below, assume I have also added a filter rule to the Marvel group of "Publisher Is Marvel".

I hope I'm explaining that well enough.


Last Edit: 1 year 5 months ago by duckpuppy.
The administrator has disabled public write access.

Good News, Even Better News & Bad News not neccesarily in that order. 1 year 3 months ago #45750

  • T3KN0Gh057
  • T3KN0Gh057's Avatar
  • Offline
  • Platinum Boarder
  • Posts: 407
  • Thank you received: 114
  • Karma: 27
Bad News: Woke up one morning a couple weeks ago to find Windows 10 had wormed its way on to my computer without authorization. I love Windows 10's look and feel and its functionality but until it stops sending excessive info from my computer to Microsoft its not welcome in my life. However instead of re-installing Windows 7 i just decided to switch all my PCs to pure Linux systems: a decision that's been a long time coming. Unfortunately ComicRack performs less than satisfactory (in my opinion) with Linux via mono or wine (which is also via mono for windows)

Good News: It struck me last night, and i don't know why i neglected to think of it sooner, that the answer to that is Windows 7 running in a Virtualbox. So I've just finished setting up my environment for that.

Even Better News: I was in the final testing stage for 2.3.x before all that (which should fix all the errors that have been mentioned before and after my last post). So the shortest time for its arrival is within 2 weeks (Independence day coming up so family is in town otherwise it would sooner) if i don't happen into any critical design or coding problems.

on a less related note, 2.5.x is going to be a complete UI rebuild using pure C# & python code (rather than having an external executable). and will probably be the final version (except tweaks and fixes) unless theres a change in ComicRack that causes it to break.

duckpuppy wrote:
I hope I'm explaining that well enough.

Yup, I got it. This has already been fixed in the upcoming version, I hope. I know it now works properly for me, but once 2.3.x gets in the wild we'll see.
also duckpuppy once its working the way you want it I SERIOUSLY want to get my hands on your profile. Love the way it shows you have things set up in the picture.

P.S. can somebody please walk me through setting up and using GIT, preferably somone familiar with Linux. I want to set up a github repository for the code and someplace to house profiles & profile fragments for Data Manager.
Last Edit: 1 year 3 months ago by T3KN0Gh057.
The administrator has disabled public write access.

Good News, Even Better News & Bad News not neccesarily in that order. 1 year 3 months ago #45751

  • pweasel
  • pweasel's Avatar
  • Offline
  • Expert Boarder
  • Posts: 117
  • Thank you received: 18
  • Karma: 8
CRW 0.9.178 x64 on Win10
CRA 1.80 on Nexus 10
Last Edit: 1 year 3 months ago by pweasel.
The administrator has disabled public write access.

Good News, Even Better News & Bad News not neccesarily in that order. 1 year 3 months ago #45752

  • T3KN0Gh057
  • T3KN0Gh057's Avatar
  • Offline
  • Platinum Boarder
  • Posts: 407
  • Thank you received: 114
  • Karma: 27
pweasel wrote:
I appreciate the suggestion but thanks to Microsoft's kernel bypassing the hosts file for their telemetry there's nothing that can stop Windows 10's phoning home except blocking all windows.com, bing.com, microsoft.com and any other Microsoft owned domains (and some domains in asia that collect info for Microsoft) with a hardware firewall, which also disables Windows Update.

My solution is more practical (since i trust Linux more and its REALLY a free OS). I have a Windows 7 OS in a Virtual Machine (that I can upgrade to windows 10 when its safe, plus a backup VM in case Windows 10 asserts itself again. And all pure Linux systems on my network like i always wanted.
The administrator has disabled public write access.

Good News, Even Better News & Bad News not neccesarily in that order. 1 year 3 months ago #45759

  • duckpuppy
  • duckpuppy's Avatar
  • Offline
  • Junior Boarder
  • Posts: 37
  • Thank you received: 3
  • Karma: 1
T3KN0Gh057 wrote:
P.S. can somebody please walk me through setting up and using GIT, preferably somone familiar with Linux. I want to set up a github repository for the code and someplace to house profiles & profile fragments for Data Manager.

What questions do you have? I've been using git both personally and professionally for a years. I'm not a full-fledged guru, but I can certainly help get you set up.

What flavor of Linux are you using? I'm most comfortable with Debian or it's derivatives (Ubuntu being the most popular of those), but I work with RedHat too, so I can handle that. Arch and Gentoo are probably my least familiar distros of the big ones. What level are experience with Linux are you? I assume some, since choosing to go full-linux usually isn't something a Linux newbie decides to do, but I'm not going to assume anything if I can help it.

On Debian/Ubuntu, sudo apt-get install git should get you started, sudo yum install git on RedHat derived distros. I also like the tig package - it's a "command line gui" for git, and it's good for visualizing the repo.

Do you like using a GUI, or are you a command line person. I live in the command line (vim for editing almost everything) mostly, but the best Git GUI for Linux I have been told is GitKraken (www.gitkraken.com/features). I haven't used it, but it looks great.

Setting up git is pretty easy - once it's installed, all you really have to do is go to the top-level folder of your code and type:
git init

This will create a repo managing that folder and everything under it. To ignore files, create a .gitignore file. This file can be in the root folder or any subfolder, and it will ignore files contained it it's folder and any subfolders under it. Most commonly, there's only one .gitignore file in the root of the repo. There are good sample .gitignore files here: github.com/github/gitignore

I don't think there's one for C# in there, but they will help you get the feel for the format and what should be in yours. Basically, one ignore pattern per line.

Once the repo is created, and the .gitignore file looks good, run
git status

If anything shows up in the list that should be ignored, check the .gitignore file and figure out why it isn't. Once it looks good, run
git add .
from the root of the repo. This will add the files to the staging area of git. Only staged changes are committed. That said, run
git commit
You'll get prompted for a commit message. Alternately, the -m switch will allow you to pass the commit message on the command line, eg. git commit -m "Initial commit"

There's your first commit in the new git repo. For a nice quick painless intro, go to try.github.io/levels/1/challenges/1 and work through the interactive session. It shouldn't take more than 15 minutes or so, and you'll at least have a feel for git.

On the housing code and profiles front, set up a GitHub Organization for data manager. Make yourself the only member, and put the repositories in there. This does mean you need to sign up for a personal account before creating the Org - as long as you only use public repos (which means all source code is available), then it should be free. Instructions here: help.github.com/articles/creating-a-new-...zation-from-scratch/

The Org will provide a nice place for the DM code and related repos while giving you your personal account for your non-DM stuff. Being the only member means that repos have to initially be created by you, but anyone can fork them and ask for you to merge changes back in. You remain a gatekeeper, but everyone has the freedom to make changes... just as you have the freedom to reject them. If you want collaborators you can invite other github users to be full members of the org, and they can perform the same management tasks as you.

This is a lot of info, and kind of scattered, but it's not a small topic. Feel free to ask questions, I'll help where I can.
The administrator has disabled public write access.
The following user(s) said Thank You: T3KN0Gh057

Good News, Even Better News & Bad News not neccesarily in that order. 1 year 3 months ago #45761

  • T3KN0Gh057
  • T3KN0Gh057's Avatar
  • Offline
  • Platinum Boarder
  • Posts: 407
  • Thank you received: 114
  • Karma: 27
duckpuppy wrote:
What flavor of Linux are you using? I'm most comfortable with Debian or it's derivatives (Ubuntu being the most popular of those), but I work with RedHat too, so I can handle that. Arch and Gentoo are probably my least familiar distros of the big ones. What level are experience with Linux are you? I assume some, since choosing to go full-linux usually isn't something a Linux newbie decides to do, but I'm not going to assume anything if I can help it.

My server is running Debian 8.5 headless, and all my workstations are running Ubuntu flavors (Kubuntu, Lubuntu & Linux Mint).

Do you like using a GUI, or are you a command line person. I live in the command line (vim for editing almost everything) mostly, but the best Git GUI for Linux I have been told is GitKraken (www.gitkraken.com/features). I haven't used it, but it looks great.

I'd prefer GUI for anything that needs intensive study, editing & maintenance (ie, IDEs for coding), but find most things in Linux that I already understand and need little maintenance are best done from the command line.

[This is a lot of info, and kind of scattered, but it's not a small topic. Feel free to ask questions, I'll help where I can.

Thank you immensely. I couldn't get my head wrapped around any of the tutorials i read, not enough to get started. Since my stroke my brain works differently, and it gets frustrating. Dealing with things that are non-linear are not fun to try to process for me, it took me forever to decipher the apps i coded before. Once i have a starting point however and can learn what i need as its needed, I'm fine. Even before the stroke i had some trouble with some broader concepts. My C/C++ has always been only rudimentary because of this. Pointers and more complex concepts have left me baffled, not the use of them but the the broader reasoning of them: not exactly understanding them makes me blind to when they should and shouldn't be used or understand the dangers of their usage.
Last Edit: 1 year 3 months ago by T3KN0Gh057.
The administrator has disabled public write access.

Good News, Even Better News & Bad News not neccesarily in that order. 1 year 3 months ago #45794

  • chrisdukes
  • chrisdukes's Avatar
  • Offline
  • Fresh Boarder
  • Is it Wednesday yet?
  • Posts: 15
  • Thank you received: 1
  • Karma: 0
I can't get this to populate the Genre field:

<<FilePath.Contains:E:\Comics\West\Genres>> => <<FileName.RegExVarReplace:E:\Comics\West\Genres\(?<Genre>[^\\]*?)\>>

Example:
E:\Comics\West\Genres\NOIR (the genre)\Casanova\Casanova 002 (2006) (Kman).cbz
The administrator has disabled public write access.

Good News 1 year 3 months ago #45797

  • chrisdukes
  • chrisdukes's Avatar
  • Offline
  • Fresh Boarder
  • Is it Wednesday yet?
  • Posts: 15
  • Thank you received: 1
  • Karma: 0
I changed it to this:
<<FilePath.Contains:E:\Comics\West\Genres>> => <<FilePath.RegExVarReplace:E:\\Comics\\West\\Genres\\(?<Genre>.+?)\\>>

It works but I get "N, o, i, r" instead of "Noir".
The expression also works fine in Tags From Name and Priat. No acronyms.
Last Edit: 1 year 3 months ago by chrisdukes.
The administrator has disabled public write access.
Time to create page: 0.246 seconds

Who's Online

We have 179 guests and 2 members online