ODM2 / ODM2PythonAPI

A set of Python functions that provides data read/write access to an ODM2 database by leveraging SQLAlchemy.
http://odm2.github.io/ODM2PythonAPI/
BSD 3-Clause "New" or "Revised" License
4 stars 13 forks source link

Can we delete the odm2api/ODM1_1_1 code? #38

Closed valentinedwv closed 7 years ago

valentinedwv commented 8 years ago

Seems to not be maintained.

emiliom commented 8 years ago

I've wondered about that too; mainly about what it's there for if it's not ODM2 per se

sreeder commented 8 years ago

The odm1_1_1 code is intended to help map the odm2 tables into the odm1 schema. So that if someone has used the api to connect to an odm1 database they can seamlessly connect to an odm2 database. We developed this to try and support an odm2 database in our current structure of ODMToolsPython. There are a few key features, like relationships, that don't currently work. It is inactive because we have been focusing on getting the ODM2 interface working. The LikeODM1section creates the class mappings, and the ODM1_1_1 contains the services and queries. When we are done we should be able to run those same queries on an odm2 database.

emiliom commented 8 years ago

@sreeder, thanks for the explanation. It sounds like a useful functionality. But:

valentinedwv commented 8 years ago

Circular logic in the code ( I think). If this API is the base, and future versions of ODM tools will depend on it, then ODM2api can not have dependencies on ODMTools.

I would guess also, that I've mucked up the original code

horsburgh commented 8 years ago

The point is that we developed the first versions of ODM Tools Python based on ODM 1.1.1 - because ODM2 was not ready and we needed ODM Tools Python. Our desire is to have a single ODM Tools codebase that works with both ODM 1.1.1 and ODM2 databases. Our approach was to develop code that made time series data coming from an ODM2 database look the same as if it came from an ODM 1.1.1 database. This is obviously broken at the moment.

We're open to suggestions for how to go about getting ODM Tools Python to work with both ODM 1.1.1 and ODM2.

emiliom commented 8 years ago

We're open to suggestions for how to go about getting ODM Tools Python to work with both ODM 1.1.1 and ODM2.

I don't have any at this point :( Besides, I'm not familiar with the ODM Tools code base proper.

But I'll go back to my comments from a couple of days ago regarding the relationship of the ODM 1.1.1 code base with odm2api:

sreeder commented 8 years ago

@emiliom @valentinedwv I am going to remove the ODM1 code from the repository, should I also remove the ODM2 folder and just put the models and services code straight into the odm2api folder, or do we want to keep the hierarchy?

valentinedwv commented 8 years ago

Yes to deleting the ODM1 code. It's preserved in the pre-alpha branch. The hierarchy is there... I prefer some of a hierarchy. Tired of long files of python code. I'd like models broken up into more functional pieces

emiliom commented 8 years ago

:+1: to deleting the ODM1 code (I assume you've already discussed it with @horsburgh).

The hierarchy is there... I prefer some of a hierarchy. Tired of long files of python code. I'd like models broken up into more functional pieces

I agree that hierarchy is better. But the specific hierarchy we're left with (ODM2) may not have the most useful names and groupings, so it's worth rethinking.

I'm tied up with other things right now (including, by tomorrow, looking at @sreeder's https://github.com/ODM2/ODM2PythonAPI/pull/51). So, as a short-term strategy I think I'd prefer to not change the ODM2 folder for now, and pick up that topic again next week or so.

emiliom commented 7 years ago

Closing. Addressed by PR #81