Git Product home page Git Product logo

valder's Introduction

valder

Valder - Vala source code welder Please refer to http://activey.github.io/valder

Update Feb 8th 2021

This project is now being maintained and developed as part of the larger Abstract OS Initiative. License and such remain the same. This project now lives on GitLab. The purpose of this move is to take advantage of GitLab CI and CI/CD Abilities so Valder can be utilized in Automation systems!

Please see: https://gitlab.com/abstract/valder

valder's People

Contributors

activey avatar digi59404 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar

valder's Issues

Release 0.0.2

Release new version, create a deb archive and put it on page.

Dead

Is the project dead? please don't be dead

RPM packaging plugin

Create a plugin implementation that will be capable of building RPM packages.

Source files in recipe file

Make it possible to add a list of vala source files into recipe file by hand, model is already implemented, needs just some json deserialization code.

Debug mode compilation

Enable 'debug' mode - include valac '-g' and C compiler '-rdynamic' flags in plugin-build. Do it by reading new plugin recipe config entry.

As simple as possible, JSON?

We try to keep Valder as simple and intuitive as possible mantaining it's elastic and quite powerful design.

Why don‘t you use for config files the Vala itself? Or .toml. https://en.m.wikipedia.org/wiki/TOML
They have much cleaner syntax than json files. I mean easier to read and write for people than json.

Comparison with Poulp

Currently Poulp provides almost everything Valder has + some other cool features, maybe add a comparison on the website next to the Bake (#32) one.

Copying static resources

Introduce new folder structure in src/main/resources and in src/library/resource that will be copied over in build process into target/share directory.

Code style

Think of some generic code formatting style that could be applied to any Vala file

Fix code formatting

Apply some non-destructible uncrustify rules on whole source code, right now it looks some times like ripped of from lawn mower. Indentation is completely broken and it's relatively hard to read some fragments (damn you sublime and my laziness).

Comparison with Bake

Bake is a clear competitor for Valder, it has almost the same priorities and has a few Vala-related niceties that Valder currently lacks, but it's abandoned atm. Can you provide a comparison on the website? Thanks for your time

Change way of 'importing' VAPI files

Right now any referenced .vapi file is passed as a source file for build. Change it to use rather external_package and include --vapidir equivalent in ValaCodeCompiler.

Uncrustify configuration

Prepare a better uncrustify configuration file that could be use to format any bob based project. I would suggest to follow Java formatting style, something similar to what is provided by defult in Eclipse or IntelliJ.

DEB creator plugin

Implement a plugin for generating DEB file that could be shipped to debian/ubuntu distros.

Archive creator plugin

Create a plugin for packaging output binaries produced by build plugin into archive, tar.gz or similar, or maybe give an option to choose one?

Ignore code compilation for empty source file set

When there are no .vala files present under src/main or src/library directory just dont compile either library or runtime binary. It has to reflect also when passing parameters to runtime compiler (when lib is not generated).

Dependencies scopes

Create new dependency attribute - scope - that could have one of three possible values:

  • library - dependency will be used for compiling library binary,
  • runtime - dependency will be used for compiling runtime binary,
  • both - depdency will be used in both processes

Local bob packages repository

Create a plugin that will 'install' build output files in local bob repository. The idea behind it is close related to what Maven is doing for java. This 'repository' will be just a directory in user home directory that will hold a list of subdirectories where each library built by Bob will place it's C headers/Vapi files/So libraries in a separate directory.

Valder client API

Implement an intermediate layer for using Valder in "interactive" mode. This will deliver a set of helper interfaces with some utility methods for making it easier to implement an integration layer with Valder for some other tools out there.

Update documentation

Update online documentation, add:

  1. Information about generating GIR file,
  2. Info about "sources" in recipe file

Problem with Gtk annotations

When using Gtk annotations like [GtkTemplate] on newer versions of glibc compiler trows an error:

error: glib 2.38 is required for using Gtk templates (with --target-glib=2.38)

Vapi type dependencies

Implement new type of project build dependency that is a filesystem directory with vapi files at given location. It will introduce new dependency type beside "pkg". It would be nice to have an option to pass a vapi directory location, be it relative or absolute.

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.