Releases: samualtnorman/hackmud-script-manager
Hackmud Script Manager 0.21.1
To update to the latest release:
- If you have HSM installed globally, run
npm install -g hackmud-script-manager@latest
- Run
pnpm add hackmud-script-manager@latest
in your Hackmud Scripting Environment
Fixed
- Exit code not being set when warnings are printed to stderr
_id
type not being set in mongo queriesObjectId
not being a valid mongo id (thank you @danswann!) #223false
incorrectly being allowed as mongo ids (thank you @danswann!) #223- Type error coming from
hackmud-script-manager/env
--root-folder-path
not applying in specific case- Trying to treat folders with invalid user names (e.g.
.git
) as if they were for pushing scripts from (thank you @danswann) #225
Setup: https://github.com/samualtnorman/hackmud-script-manager#install
Full Changelog: v0.21.0...v0.21.1
Hackmud Script Manager 0.21
To update to the latest release:
- If you have HSM installed globally, run
npm install -g hackmud-script-manager@latest
- Run
pnpm add hackmud-script-manager@latest
in your Hackmud Scripting Environment
Added
- Missing lowsec scripts
- by @joshleblanc in #210
- Global
Scriptor
type- by @Longboyy
DEEP_FREEZE()
,_RUN_ID
, and$db.ObjectId()
to typings--hackmud-path
option andHSM_HACKMUD_PATH
environment variable to override where HSM assumes the hackmud directory to be- Polyfill
Object.hasOwn()
- Root aliasing in import statements controlled by
--root-folder-path
- e.g.
import {} from "/lib/isScriptor"
in any file will point atsrc/lib/isScriptor.ts
with--root-folder-path=./src/
- e.g.
Improved
$db
now has better typesContext
now has slightly more ergonomic typing$G
is no longer typed asany
- Detect and print help for when using options wrong
#G
and$G
no longer have a foot-gun caused by hackmud weirdness
Fixed
- Breaks when when script contains identifier with same name as script
- by @VincentGuinaudeau in #202
- Subscripts now use the seclevel they were declared with
- by @VincentGuinaudeau in #201
- Generated
player.d.ts
using wrong slashes on microsoft operating system - Watching a non-existent folder causing weird behaviour
- Not being able to import
.json
files Function.prototype
when transformed evaluating toundefined
Changed
These features will still work in this release but are likely to be deprecated in the next release:
hsm gen-dts
is now known ashsm emit-dts
hsm golf
is now known ashsm minify
--type-declaration-path
is now known as--dts-path
hsm dev
(andhsm watch
) is now known ashsm push --watch
--force-quine-cheats=false
is now known as--no-quine-cheats
Deprecated
These features will still work in this version but you will see warnings when you use them. The features will stop working in the next minor release, HSM 0.22.
- Support for Node.js 21, update your version of Node.js
--skip-minify
, switch to using its alias--no-minify
--type-declaration
,--dts
, and--gen-types
. Switch to using their alias--dts-path
hsm generate-type-declaration
,hsm gen-type-declaration
, andhsm gen-types
. Switch to using their aliashsm emit-dts
- Global
_SCRIPT_NAME
, use_SCRIPT_SUBNAME
instead - Subscripts in the form of
$s.foo.bar()
and#s.foo.bar()
, use explicit seclevels instead
Removed
- HSM's
env.d.ts
now uses an explicitdeclare global { … }
block which means a lot of globals are no longer- Globals that were intended to be used in player scripts are still global but if there is a global you were using before that is no longer available, please make an issue or let me know on Discord
export
s other than default turning intoreturn
and_EXPORTS
global
Setup: https://github.com/samualtnorman/hackmud-script-manager#install
Full Changelog: v0.20.3...v0.21.0
New Contributors
- @anihilprj made their first contribution in #177
- @Longboyy made their first contribution in #171
- @joshleblanc made their first contribution in #210
Hackmud Script Manager 0.20.4
To update to the latest release:
- If you have HSM installed globally, run
npm install -g hackmud-script-manager@latest
- Run
pnpm add hackmud-script-manager@latest
in your Hackmud Scripting Environment
Fixed
hsm push --help
andhsm dev --help
Examples:
descriptions looking jankyhsm sync-macros
deleting all macros (Thank you @anihilprj!)$fs.market.browse()
expecting all properties inargs
(Thank you @Longboyy!)- Quine cheat string breaking when quine cheating subscript syntax in string
- Throwing error when script has
this
in it - Incorrectly quine cheating main function's parameters
- Give better error message when not ran
user <user>
in hackmud yet - Fix missing type parameter on
$fs.scripts.lib().uniq()
Setup: https://github.com/samualtnorman/hackmud-script-manager#install
Full Changelog: v0.20.3...v0.20.4
Hackmud Script Manager 0.20.3
Fix
- Nested arrays not quine-cheating properly #153 (again)
Setup: https://github.com/samualtnorman/hackmud-script-manager?tab=readme-ov-file#install
Full Changelog: v0.20.2...v0.20.3
Hackmud Script Manager 0.20.2
I only created this release so I could update the README.
See the previous release for something more interesting.
v0.20.1
Fix hsm dev
not detecting changes to script files directly in source folder.
This is only a patch release, see the previous release for something more interesting to read.
Setup: https://github.com/samualtnorman/hackmud-script-manager?tab=readme-ov-file#install
Full Changelog: v0.20.0...v0.20.1
Hackmud Script Manager 0.20
To update to the latest release, run pnpm add hackmud-script-manager@latest
in the environment folder.
Added/Updated
--hackmud-path
option andHSM_HACKMUD_PATH
environment variable #150Object
inObject.call.bind
is now minified to less chars when available #130- Rename
--skip-minify
to--no-minify
hsm --help
- Convert
console.log()
and friends to#D()
#135 - Default hackmud path
- Can now directly import
hackmud-script-manager
without/index.js
hackmud-script-manager/env.d.ts
_SCRIPT_NAME
and_SCRIPT_USER
no longer turn into"UNKNOWN"
#151
Fix
JSON.stringify()
andJSON.parse()
innode_modules
are now converted toJSON.ostringify()
andJSON.oparse()
#137- Empty object/array literal cause parent object/array literal not to be quine cheateable #146
hsm push
(all-scripts invocation) does not follow symbolic links #155- Nested string arrays disappear when minified #153
- No longer generate unnecessary around function expressions #147
- not calling preprocessor function semantics
- fix
_FULL_SCRIPT_NAME
turning into"undefined.foo"
- Do not push javascript version of script if typescript version exists #152
Changed
- samualtnorman/hackmud-environment#27
- got rid of
~/.config/hsm.json
- replaced with
--hackmud-path
option andHSM_HACKMUD_PATH
environment variable
- replaced with
- drop
hsm config
- default exports from modules
- mandate
scriptName
option toprocessScript()
andtransform()
- renamed
Info["file"]
andInfo["minLength"]
topath
andcharacterCount
- rename
uniqueID
touniqueId
Setup: https://github.com/samualtnorman/hackmud-script-manager?tab=readme-ov-file#install
Associated Issue: #154
Full Changelog: v0.19.0...v0.20.0
Thank you @danswann for your contribution to env.d.ts
!
Hackmud Script Manager 0.19
Improved
- Command response time
Fixed
- Bug that caused
hsm dev
to ignore scripts in folder #144
Changed
- licence to MIT
- Minimum required Node.js version to 20
Hackmud Script Manager 0.18
Improved
- Overhauled command help and logging
- Better command response time
Changed
- Drop support for Node 12 (now 14 and above is needed)
Fix
- No longer quine cheat
true
andfalse
since it uses more characters than just!0
and!1
Hackmud Script Manager 0.17
Added
--force-quine-cheats
command option
Changed
minify()
'sautocomplete
parameter is no longer a parameter and is instead an option