Git Product home page Git Product logo

jmbowman / portabase Goto Github PK

View Code? Open in Web Editor NEW
11.0 4.0 2.0 4.51 MB

A cross-platform personal database application

Home Page: http://portabase.org

License: GNU General Public License v2.0

C++ 83.73% QMake 0.88% C 7.58% Makefile 1.55% Objective-C 0.07% HTML 0.13% Assembly 0.02% Shell 1.39% Python 0.85% Prolog 0.01% Batchfile 0.49% Inno Setup 2.34% CSS 0.01% Objective-C++ 0.48% CMake 0.26% Roff 0.21%
qt database cplusplus maemo mac windows linux hacktoberfest

portabase's Introduction

I'm Jeremy Bowman, a senior software engineering manager and polyglot software developer with a particular fondness for Python and Rust.

I spent 7+ years actively maintaining and improving the open source Open edX system for building and running online courses. Between that, a few years leading development of O'Reilly Learning (formerly known as Safari Books Online), and a few years of contract work for assorted clients, I've been building and maintaining Django web applications (and their associated browser and mobile interfaces) for over 14 years. Along the way I've written assorted Django apps & middleware and contributed to projects including Django, setuptools, and Zulip.

I also wrote a mobile-first database app called PortaBase back in 2002 (originally for Sharp Zaurus Linux PDAs) which now runs on multiple desktop & mobile platforms. Development is intermittent as I go through long busy stretches when it mostly meets my needs, but I've taught myself many aspects of software development by first needing them for PortaBase improvements. And I use PortaBase daily for assorted information management tasks, so I always come back to it eventually to keep it running on newer devices and operating system releases.

portabase's People

Contributors

jmbowman avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar

portabase's Issues

Fix width of new columns

After a file is first created, a new column added sometimes gets a zero width in the All Columns view. This seems to be a regression (maybe after 2.1), debug and fix.

Set up CI for Linux builds

I eventually want builds performed for each supported platform on every push to GitHub, but I have to start somewhere; and Linux is the most easily scripted of them. Pick a CI service, have it build and install the Debian package, and also run any unit tests that have been written by then. Options:

  • Travis CI - already pretty familiar with, has a good selection of environments, but isn't as actively maintained now as some of the other options. Uploading the built files is a little complicated - dpl v1, dpl v2
  • AppVeyor - have used before, more polished macOS and Windows support, but fewer Linux options
  • GitHub Actions - built into GitHub, less mature but growing quickly, doesn't support the non-x86 architecture options that Travis CI does
  • GitLab CI - the most only open source option among the alternatives, supposedly quite good but doesn't support as many platforms as the others without providing custom runners

I might end up using more than one of these, especially since some of them have limits on the number of concurrent workers allowed in the free plan.

Update Windows packaging

The Windows packaging hasn't been significantly updated since the 2.1 release almost 8 years ago. I have a first draft of some updates and fixes in a local branch; finish these and make sure the resulting installer works cleanly on a recent Windows system.

Fix Debian package issues reported by lintian

Fix any of these that can be resolved quickly before the next release:

E: portabase changes: bad-distribution-in-changes-file unstable
W: portabase source: native-package-with-dash-version
E: portabase source: source-is-missing resources/help/translations/cs/sphinx.js line length is 4310 characters (>512)
E: portabase source: source-is-missing resources/help/translations/fr/sphinx.js line length is 4125 characters (>512)
E: portabase source: source-is-missing resources/help/translations/it/sphinx.js line length is 3969 characters (>512)
E: portabase source: source-is-missing ... use --no-tag-display-limit to see all (or pipe to a file/program)
W: portabase source: package-needs-versioned-debhelper-build-depends 10
W: portabase source: useless-autoreconf-build-depends autotools-dev
W: portabase source: ambiguous-paragraph-in-dep5-copyright paragraph at line 6
W: portabase source: missing-license-paragraph-in-dep5-copyright lgpl-2.1+ (paragraph at line 38)
W: portabase source: ancient-standards-version 3.9.3 (released 2012-02-23) (current is 4.1.4)
W: portabase source: debian-watch-file-in-native-package
W: portabase: description-synopsis-starts-with-article
W: portabase: embedded-javascript-library usr/share/portabase/help/ja/_static/jquery.js please use libjs-jquery
W: portabase: embedded-javascript-library usr/share/portabase/help/ja/_static/underscore.js please use libjs-underscore
W: portabase: manpage-has-errors-from-man usr/share/man/man1/portabase.1.gz 111: warning: numeric expression expected (got `a')
W: portabase: desktop-mime-but-no-exec-code usr/share/applications/portabase.desktop
W: portabase: command-in-menu-file-and-desktop-file portabase usr/share/menu/portabase:3

Problem with Linux mint 20.

Portabase no longer works on Linux mint 20. Also no longer available in the repositories of mint 20 and Ubuntu 20. A serious problem for a long time user like me. I have had to install wine and use the windows version. Can portabase Deb be updated?

Incremental search

I want the function of incremental search.
Portabase (version 2.1) has that function. By typing in several characters, the cursor moves to the record corresponding to these characters.

Try using native file dialogs on Android

Qt 5.15 is now out, supposedly with support for native file open and save dialogs on Android. Try this out and see if it's an improvement on the dialog used in the 2.2 release.

Add to F-Droid

Add PortaBase to F-Droid as a free option for Android installation (the 99 cent charge in the Google Play Store is mainly there as an experiment in trying to make PortaBase development more sustainable and to cover the cost of the Google Play registration fee).

https://f-droid.org/en/contribute/

Google Play availability

I briefly was excited to discover https://play.google.com/store/apps/details?id=org.portabase.android&hl=en_US&gl=US .. but then when I view the page/Play app on my Android device I get a message about not being available for my device as the build in the store is too old. I'm currently on an Android 10 phone.

I suspect this is down to recent Play store requirements, that sound like significant busy work to make apps fit into the new requirements. Probably more work than the 99cents my potential purchase would be worth.

I did find #47 - I'm not an experienced android dev otherwise I would offer to work on that. I checked https://gitlab.com/fdroid/rfp/-/issues/?sort=created_date&state=opened&search=portabase&first_page_size=20 and I can not see a submission request, so that is something I could potentially help with as that looks like a metadata submission task.

Start a proper test suite

PortaBase has managed surprisingly well all these years without an actual test suite, but it's long past time to start one. Decide on the framework to use and write the first few tests in it.

Asking for iOS build...

Hi Jeremy!
You where definitely NOT the last holdout for the N900. I am still useing it - even as company phone. But the last exchange updates chrashed my calendar sync - so the days are counted! Unfortunately my company only supports iphones (i am the last man standing without an iphone) - but an iphone without portabase is useless for me. Its the only app i can't miss! How hard would it be, to build/devlope a iOS Version of portabase.
I hope you are healthy!

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.