Code Monkey home page Code Monkey logo

dado's People

Contributors

aplteam avatar joshdavid avatar norberturkiewicz avatar paulmansour avatar

Stargazers

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

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar

dado's Issues

RunGitCommand Problem

RunGitCommand does not work as a user command because git options are confused with user command options.

Review logging, session detritus

Git commands return a lot of info, currently discarded or spilled into session somewhat randomly.

Deal with this cleanly and consistently. Perhaps a log file, or just a log window or temp variable somewhere.

Synchronize Wiki

Investigate a way to synchronize a wiki with a project. Consider keeping the wiki as its own repo, as it it is, but perhaps tie pushing/pulling of the wiki to operations on the main code repo.

Enhance and Rename Dependency Report

Enhance the new dependency report to show main project stats like version, current branch, uncommitted changes, unreleased commits, etc. Rename the report to Project Status report or something like that.

Change to project space on openproject

Consider automatically changing to the project space on opening a project as this is the first thing one does 99% of the time, to see the current branch, recent changes etc. Maybe displaying the current branch and other stats too.

Format of acre.config

AcreTools assumes acre.config is formatted as :Namespace...:EndNamespace, asnd does not handle APLAN or JSON. It needs to handle all three.

ReleaseNewVersion

should work in-place when releasing a new version of AcreTools itself.

User command application

AcreTools currently assumes all applications are user command apps and includes the .dyalog file in the application build - which does not hurt. However, it should only include this file if certain functions exist.

Git Ignore

Should include all standard folders to ignore.

URL , Name, and Group

The last two segments of the URL define a group and name. We allow these to be specified as config parameters, and default them, if not provided, to the URL segments. Is this necessary or worth it?

When specify a dependency, we use the URL and infer the name and group from the URL when writing out and naming the package folder. If the config file specifies explicit name and group, we would have to read these after the fact and rename the package folder. It may not matter anyway...

Building the application workspace

The process that builds an application workspace is currently asynchronous, which requires the kluge of a delay in the main process. It used to be synchronous, but this stopped working as []WSID was suddenly empty. Its an issue of []CMD with a simple text arg or a nested two item vector.

FormatStatus function fails

...when parsing result of diff if there are renames. Codes are not single letters, Must find first blank in each row, not first all blank column.

ShowHistory

Does not work properly as a user command (or directly in session)

The Install.dws Latent Expression

The Install []LX should not actually do the install, just spill some text in the session for the user to execute. It can prewarn then if the Create event is in use by something other than AcreTools.

Code and Test for circular dependencies

There should be no problem with circular dependencies and doing reference injection from A to B and B to A if so desired. Not that it is necessarily a good design...

Provide list of available releases for dependencies

Provide way to determine available new releases of dependencies, and then an a way to automate upgrading to them. This would write in the new versions to the config file, and then prepare a commit and message as appropriate.

Package Cache Folder

Find a place to specify the package cache folder as an acre configuration parameter somewhere.

Package folder names in Application

Package folder names include the version number. When included under an application, they currently maintain this name. This means that when a new version of an app is installed over an existing version, you can build up folders of old obsolete packages, unless a full uninstall or delete is done.

Unify Command and API syntax

Provide a unified command and API syntax, something that works as a model for all user commands applications.

Release new version locally

Refactor ReleaseNewVersion so we can release locally (mostly for testing). Also provide option for doing a release without a Build.

Simplify Package Folder Name

Remove domain name from package folder name. Its overkill. Use Group, Name, and Version only.

Group and Name should uniquely identify a package regardless of where the project is hosted.

acre.init file

Add standard AcreTools params and defaults, more for reference and ease of changing, as they default anyway.

Enhance the ExecuteAPL function

This function need to strip out all command parameters of the existing command line. In addition, the executable should be an optional left arg, so different versions may be used.

Folder Structure

The AddToGitHub command should ensure that all the standard folders exists /Assets/Runtime, etc,, even if empty.

)Clear removes AcreTools

from the workspace, obviously. Acre commands should all check if it is there and clone from []SE if necessary.

Runtime vs Development Dependencies

Is this worth having? A a property defining the dependency as runtime or development. When building an app, don't need to include the development dependencies.

Multiple versions in dev or non versioned releases

When developing (or building a non-versioned release) if there are dependencies of same project but different versions, we must open them as packages, as if they are opened as projects, they may clobber each other.

Reference Injection

is happening for the AcreConfig namespace and quadVars and other namespaces and ns scripts, when it really should not. Only basic code namespaces should be the targets of injection.

Build ID

Investigate BuildID in addition to version, so MSI installers always have a new, higher number.

Auto cloning of co-developed dependencies

Consider a flag in the dependency specification that indicates the project is co-developed with the parent project. When opening the main project, AcreTools can verify that all the co-developed dependencies are downloaded in sibling folder if not already there, rather than downloading the a package.

Add Manifest.txt file

That lists the projects/packages included in the application. For packages include the version, for projects include the branch , commit id and whether or not dirty directory tree. For example:

Project : CarlisleGroup/FlipDBDesktop WIP 4544544 Dirty
Project:  CarlisleGroup/FlipDB  Master f43534er Clean
Package: CarlisleGroup/XL2APL 1.2.3

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.