summaryrefslogtreecommitdiff
path: root/README.md
AgeCommit message (Collapse)AuthorFilesLines
2019-12-30Actually, let's get rid of v3 now that it doesn't work anymore anywayYorhel1-20/+4
2019-12-30ulist: Remove remnants of old votes/vnlists/wlists tablesYorhel1-1/+3
2019-10-23Also update README with the new Elm version requirementYorhel1-1/+1
2019-09-25v2rw: Add Elm & db_edit framework + Convert doc page editingYorhel1-7/+8
Most of this is copied from v3. I did improve on a few aspects: - db_edit() and db_entry() use VNDB::Schema rather than dynamically querying the DB. This has the minor advantage of a faster startup. - The Elm code generator now writes to multiple files, this avoids the namespace pollution seen in v3's Lib.Gen and makes the dependency graph a bit more lean (i.e. faster incremental builds). - The Elm code generator doesn't update the timestamp of files that haven't been modified. This also speeds up incremental builds, the elm compiler can now skip rebuilding unmodified files. - The Elm API response generator code now uses plain functions rather than code references and all possible responses are now defined in Elm.pm. Turns out most API responses were used from more than a single place, so it makes sense to have them centrally defined. The doc page preview function is also much nicer; I'd like to apply this to all BBCode textareas as well. (Elm.pm itself is ugly as hell though. And we will prolly need some HTML form generation functions in Elm to make that part less verbose)
2019-09-23Minor administrative fixesYorhel1-1/+2
The FCGI module is only required when running in FastCGI mode, which isn't how the container is configured. The AnyEvent::HTTP module, on the other hand, is required for many of the new Multi::* modules. They're not enabled by default but are still a significant part of Multi, so it's good to have the dependencies available.
2019-09-23v2rw: Convert doc pages + add framework for item fetching & display & revisionsYorhel1-1/+1
This bumps the minimum Perl version to 5.26 in order to make use of lexical subroutines - a feature I've been wanting for a while. This should be the last version bump, 5.26 is the highest version in Ubuntu LTS at the moment. Not that I use Ubuntu, but it's used by the Docker container and it's a sensible reference. I merged the 'maintabs' and 'hiddenmsg' features into the primary framework_ function; It fits quite well there, removes a little bit of boilerplate from the DB entry page code and reduces the reliance on common "dbSomethingGet()" methods. I was hoping I'd be able to reduce the boilerplate required for defining revisions, but I don't think that's going to happen. What I did do was reimplement the diffing to handle item and text diffs separately, with sensible defaults for the old split/join/diff options. Diffing is now performed on the raw structured data rather than on formatted HTML, which, combined with the db_entry() functions, ought to be less brittle.
2019-09-17v2rw: Initial start on an incremental rewrite; Layout HTML firstYorhel1-8/+39
I copied and modified VN3::DB to VNWeb::DB, but it isn't used yet. Now that I think about it, that module isn't "web" specific at all and should perhaps be in the VNDB:: namespace. Oh well.
2019-09-17Make hashes in VNDB::Types immutable + get rid of Tie::IxHash depYorhel1-2/+1
I love it when I can get rid of a dependency! I realized in the process that I had already made Perl 2.24+ a requirement a bit earlier on by using postfix deref. It's a useful feature and 2.24 isn't *that* new, so let's make that official.
2019-09-12Add VNDB::Config module and unified conf.pl config fileYorhel1-3/+2
This gets rid of global.pl, config.pl and config3.pl and uses the cleaner config3.pl format for the config file. The config is easily accessible from anywhere by importing the new VNDB::Config module; The global $VNDB::S,O,M,ROOT variables have been removed. Sorry for all the churn...
2019-09-11Cleanup + simplify setup instructions in READMEYorhel1-21/+10
2019-08-06Hide Novelnews/Encubed links, site seems deadYorhel1-1/+1
2019-07-25Merge the v3 branch into separate namespace + fix Docker stuff (again)Yorhel1-4/+30
I was getting tired of having to keep two branches up-to-date with the latest developments, so decided to throw v3 into the same branch - just different files (...which will get mostly rewritten again soon). The two versions aren't very different in terms of dependencies, build system and support code, so they can now properly share files. Added a section to the README to avoid confusion. This merge also makes it easier to quickly switch between the different versions, which is handy for development. It's even possible to run both at the same time, but my scripts use the same port so that needs a workaround. And it's amazing how often I break the Docker scripts.
2019-07-17Docker: Store Postgres DB in data/ + simplify the setup a bitYorhel1-12/+20
I initially wanted to move the static/.. files onto the Docker volume, so that all dynamic site data is stored in a single place. But that turned out to be impossible to do without some really ugly hacks. So instead I went with the opposite approach: get rid of the 'vndb-data' volume and instead store everything in the source directory. This also requires running PostgreSQL as the 'devuser', but that's fine for a development setup. All of this makes it more obvious what is going on and simplifies the init script.
2018-11-02Change Multi to use separate setting for db_login and to use UNIX socket for ↵alto1-0/+14
Postgres Update README with basic information on Multi (cherry picked from commit 01188a82ab736a8975c73ac5ec12621426bf6bf2)
2018-09-29Add default spoiler level to traits and use it on character editYorhel1-1/+1
https://vndb.org/t11296
2018-06-03Add development DB dump, remove old devdb, convert README to markdownYorhel1-0/+112