Jump to content

AutoIt Package Manager


Recommended Posts

version 0.3.1 released.

https://github.com/genius257/au3pm/releases/tag/0.3.1

changes:

  • Fixed issues with collecting available AutoIt3 versions (52f5b8d)
  • Changed AutoIt dependency support from just "AutoIt" with non complient semantic versioning, to "autoit1", "autoit2" and "autoit3" that are complient with semantic versioning
  • Deprecated "AutoIt" dependency
  • Fixed issues with wrong parsing and stringification of escaped chars in JSON strings. (a787859)
  • Changed the run command, to also support no additional parameters (177a9ce)
Link to comment
Share on other sites

General project status update/info:

Despite the slow development, this project is not dead to me :sweating:

I have purchased the domain https://au3.pm/ with the plan of making it the default/main/official au3pm page repository lookup. Currently the page is unfinished and not usable, reasons being reflection on how the package management part should be done (explained below).

Previously i had settled on making a single GitHub repository act as the default/main/official au3pm page lookup repository. This seemed like a cheap, simple and functional solution, and to some degree still is... except:

  • If too many files/directories exists in a single directory, the GitHub web view and API will not return all entries.
  • Using one JSON file in the root of the repository as a package dictionary/lookup will cause issues with parsing times as more packages are added.
  • Using GitHub actions for the au3pm "butler" script has issues, where the implementation keeps breaking, due to varies points of failure.

So do i have any alternatives? yes, i think i do:

1. Keep the repository in a database (most likely MySQL) and use PHP/JS to serve and manage CRUD actions to the repository.

This is what i am planning to do with https://au3.pm/ page. I wanted to keep the database as publicly available as possible and have been looking into using DOLT for the database: https://www.dolthub.com/repositories/au3pm/registry. However the current server setup i use does not support running DOLT, and dolthub does not currently have any way for me to verify that a dolthub user making a pull request for changes, corresponds to the GitHub user owning the repository entry being added/edited/removed.

So currently this read leads to the database being a plain MySQL/MariaDB hosted on my server. This is okay for not, but not great if people want to easily clone my database for an alternative lookup.

 

2. Remove the options for a centralized package lookup repository, and instead require actual per package repository references.

This will always require longer dependency strings and may create issues with discoverability of available au3pm compatible packages.

 


So not a make or break situation, but something that should be decided on before v1.0.0

Thoughts/feedback is of course always appreciated, and i hope this tool will end up being used by more people than just me ;)

Thanks for reading :)

Link to comment
Share on other sites

Have you considered supporting git repositories as packages directly? That way you don't need to deal with a central database at all (but you can still have one, of course). NPM supports this and even has a shorthand for adding git repos from GitHub directly I think.

EasyCodeIt - A cross-platform AutoIt implementation - Fund the development! (GitHub will double your donations for a limited time)

DcodingTheWeb Forum - Follow for updates and Join for discussion

Link to comment
Share on other sites

Hi @TheDcoder :)

5 hours ago, TheDcoder said:

Have you considered supporting git repositories as packages directly? That way you don't need to deal with a central database at all (but you can still have one, of course).

Yes my 2nd alternative is this, sorry if this was unclear :)

19 hours ago, genius257 said:

2. Remove the options for a centralized package lookup repository, and instead require actual per package repository references.

This will always require longer dependency strings and may create issues with discoverability of available au3pm compatible packages.

 

5 hours ago, TheDcoder said:

NPM supports this and even has a shorthand for adding git repos from GitHub directly I think.

To be clear, i plan on supporting direct GitHub repositories either way :)

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
 Share

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...