Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Release 2.0 #62

Open
10 of 12 tasks
S-S-X opened this issue Nov 19, 2020 · 2 comments
Open
10 of 12 tasks

Release 2.0 #62

S-S-X opened this issue Nov 19, 2020 · 2 comments
Assignees
Labels
API Metatool API issues documentation Improvements or additions to documentation enhancement New feature or request Needs work Main use is for pull requests that need some more work and should not be merged yet Testing required Needs some testing before merging to main branch
Milestone

Comments

@S-S-X
Copy link
Owner

S-S-X commented Nov 19, 2020

After all of the following is done:

  • #61 API refactoring.
    • TBD?: Isolate metatool special parameters from tool storage data. (description, group)
      • Can be included in feature update if API (copy function return value/structure) wont change. That would only affect internal data structure.
    • Allow tool/nodedef to somehow inform API that targeted things is not supported by tool even if registered.
      • Probably possible to include in feature update
  • #54 Magic pen.
  • #55 Container tool.
  • #69 Fix container tool recipe.
  • API documentation, at least update existing v1.x methods to reflect changes done.
  • Basic testing and review.
    • Automated regression tests for container tool and magic pen.
      ❗ basic behavior and protection tests added only for container tool, add tests later if needed.
  • Monkey testing (try to utilize pandorabox monkeys if possible 😄).
  • #78 Add version information to metatool namespace.
  • ContentDB does not handle multiline dependencies in mod.conf Full support for .conf files minetest/contentdb#243

Bump version to 2.0.0 and create release.

@S-S-X S-S-X added documentation Improvements or additions to documentation enhancement New feature or request API Metatool API issues Tool-request Request new tool Testing required Needs some testing before merging to main branch Needs work Main use is for pull requests that need some more work and should not be merged yet labels Nov 19, 2020
@S-S-X S-S-X self-assigned this Nov 19, 2020
@S-S-X S-S-X removed the Tool-request Request new tool label Nov 20, 2020
S-S-X pushed a commit that referenced this issue Nov 21, 2020
S-S-X added a commit that referenced this issue Nov 24, 2020
* (#54) Magic pen, nodedefs wip

* (#54) Magic pen, more nodedefs wip

* (#54) Allow defining only copy or paste through API, do not require both

* (#54) Add digiterms, digistuff. Fix lcd, textline

* (#54) Check if copy/paste is defined now that those are optional

* (#54) Fix digistuff panel/touchscreen

* (#54) Fix luacheck. Add default signs. Cleanup digiterm content

* (#54) Travelnet simple implementation

* (#54) Geocache fix wrong infotext

* (#54) Geocache allow owner to copy exact coordinates

* Fix crash if signs not available

* (#54) Allow tool specific storage limits, Magic pen truncate content for signs

* (#54) Add content parsers, fix travelnet reading

* (#54) Fix luac comment parser line matcher

* (#54) Allow "title" comment in addition to "Desc.*"

* (#54) Actually use title grabbed from lcd contents

* (#54) Limit get_content_title to max 40 bytes

* (#62) Magic pen migration to API v2

Co-authored-by: SX <sx@minetest>
@S-S-X
Copy link
Owner Author

S-S-X commented Dec 4, 2020

Other features / updates added after last release

  • New tools
    • Digtron configuration tool added.
    • Magic pen added.
    • Container tool added.
  • Sharetool updated:
  • Tool API
    • tool.on_read_node is now optional and not required anymore
    • tool.on_write_node is now optional and not required anymore
    • if above functions are not defined then node callbacks will be used directly
    • return nil from copy, paste or info to indicate that tool cannot be used on node

@S-S-X
Copy link
Owner Author

S-S-X commented Dec 4, 2020

Breaking changes:

  • Configuration
    • Default configuration is exported by default, can be disable through minetest.conf
  • Formspec API
    • metatool.form.register_form function signature changed, accepts table instead of 2 mixed type args
    • will not accept raw formspec string anymore, on_create must be function
    • on_create can return metatool.form.Form object, returning Form object will enable nonce security checks
    • metatool.form.Form is still considered unstable preview
  • Node registration
    • Dropped sub table from node definition, everything that was in tooldef sub table should be moved to top level definition table.
    • Refactored node definition to consistently use OOP style callbacks
      • nodedef:info(node, pos, player, itemstack)
      • nodedef:copy(node, pos, player)
      • nodedef:paste(node, pos, player, tooldata)
    • Defining both tool.copy and tool.paste is not required anymore, it is possible to leave one undefined.

S-S-X added a commit that referenced this issue Dec 7, 2020
* (#73, #74) Digtron crate for magic pen, chest labels for container tool

* fix counts_text variable and luacheck for DigtronLayout

* (#62) Chat messages if tool cannot be used on node

* (#74) Magic pen read infotext from any node

Co-authored-by: SX <sx@minetest>
@S-S-X S-S-X added this to the v2.0 milestone Feb 25, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
API Metatool API issues documentation Improvements or additions to documentation enhancement New feature or request Needs work Main use is for pull requests that need some more work and should not be merged yet Testing required Needs some testing before merging to main branch
Projects
None yet
Development

No branches or pull requests

1 participant