Skip to content

Commit c49b4fb

Browse files
committed
Merge branch 'main' into v0.10.x-fix-bootstrap-pydeps
2 parents f2c631f + 7ad4d50 commit c49b4fb

File tree

17 files changed

+551
-48
lines changed

17 files changed

+551
-48
lines changed

CHANGELOG.md

+28
Original file line numberDiff line numberDiff line change
@@ -38,6 +38,34 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
3838
### Deprecated
3939
-
4040

41+
## [Unreleased - 0.9.2+snapshot]
42+
43+
### Added
44+
- #682 When downloading IPM via the `enable` command from a remote registry, allow user to pass in the registry name (or get the only existent one), instead of the deployment enabled registry.
45+
46+
### Fixed
47+
- #684 Fixed banner display issues in interactive `zpm` shell.
48+
- #682 When enabling IPM in a namespace using local IPM caches, check for existence of `<iris-root>/lib/ipm/` beforing querying it.
49+
- #682 Use more standard wording of mapping when enabling IPM
50+
- #681 Convert specified namespaces to upper case for `enable` and `unmap` commands.
51+
- #680 Always export static files (README.md, LICENSE, requirements.txt) if existent
52+
- #678 Only update comment-flagged part of the language extension, allowing users to keep their custom code when upgrading
53+
- #680, #683 Always export static files (README.md, LICENSE, requirements.txt, CHANGELOG.md) if existent
54+
55+
### Security
56+
- #697 When publishing modules, will get an status with error message (instead of just a boolean) in case of failures.
57+
58+
## [0.9.1] - 2024-12-18
59+
60+
### Added
61+
- #663 Added support for mapping of repository settings along with, or in addition to, IPM package and routines
62+
- #663 Added functionality to always unmap repository settings when IPM package and routines are unmapped
63+
- #663 Added support for unmapping of repository settings alone
64+
- #663 Added support for `enable -community`, which resets repository settings to default and maps IPM along with repo settings globally
65+
66+
### Fixed
67+
- #663 Improved error output and instructions in the language extension when "zpm" is run from a namespace without IPM
68+
4169
## [0.9.0] - 2024-12-16
4270

4371
### Added

README.md

+14-4
Original file line numberDiff line numberDiff line change
@@ -1,19 +1,29 @@
1-
# ObjectScript Package Manager Client - ZPM
1+
# InterSystems Package Manager - IPM
22

3-
Helps to install ObjectScript classes and routines, globals, Embedded Python modules, CSP and Frontend packages, and any files into InterSystems IRIS published on the official [ZPM Registry](https://pm.community.intersystems.com/packages/-/all) or private ZPM registry of your own.
3+
Helps to install ObjectScript classes and routines, globals, Embedded Python modules, CSP and Frontend packages, and any files into InterSystems IRIS published on the official [Registry](https://pm.community.intersystems.com/packages/-/all) or private registry of your own.
44

55
## Documentation
66
* [The official documentation in the wiki](https://github.com/intersystems-community/zpm/wiki/)
77
* [Articles on the InterSystems Developer Community](https://community.intersystems.com/tags/objectscript-package-manager-zpm)
88
* [Videos on YouTube](https://www.youtube.com/playlist?list=PLKb2cBVphNQRcmxt4LtYDyLJEPfF4X4-4)
99

10+
## Compatibility Note
11+
With the release of IPM v0.9.0 on Dec 2024, IPM is no longer mapped across namespaces.
12+
This is an intentional change so that users can have different IPM versions and configurations in different namespaces.
13+
If you install IPM on an instance without the legacy 0.7.x version, IPM is only installed to the current namespace.
14+
15+
* To retain the old behavior where %IPM routines and classes mapped across all namespaces, run `zpm "enable -map -globally`. This is automatically performed when upgrading from a legacy version and can be undone by running `zpm "unmap -globally"`.
16+
* You can optionally choose to map IPM repositories across namespaces with `zpm "enable -map -repos -namespaces NS1,NS2,NS3` or `zpm "enable -map -repos -globally`. Repositories are only mapped if %IPM classes and routines are also mapped from the same namespace.
17+
* As a convenience command, `zpm "enable -community"` will make IPM behave essentially the same as legacy versions (v0.7.x) by setting up the the community registry and maping %IPM routines and classes, as well IPM repository settings to all namespaces.
1018

1119
## Installing ObjectScript Package Manager Client:
1220

1321
0. Use one-liner in terminal call or programmatically:
1422
```
15-
s r=##class(%Net.HttpRequest).%New(),r.Server="pm.community.intersystems.com",r.SSLConfiguration="ISC.FeatureTracker.SSL.Config" d r.Get("/packages/zpm/latest/installer"),$system.OBJ.LoadStream(r.HttpResponse.Data,"c")
23+
s version="latest" s r=##class(%Net.HttpRequest).%New(),r.Server="pm.community.intersystems.com",r.SSLConfiguration="ISC.FeatureTracker.SSL.Config" d r.Get("/packages/zpm/"_version_"/installer"),$system.OBJ.LoadStream(r.HttpResponse.Data,"c")
1624
```
25+
**If you want the legacy behavior of mapping IPM classes, routines, and repository settings to all namespaces, run `zpm "enable -community"` after installing IPM. See `zpm "help enable"` for details.**
26+
**In a CI script, for deterministic behavior, you should replace version="latest" with the IPM version you wish to use.**
1727

1828
OR:
1929

@@ -65,4 +75,4 @@ Here is the [alternative supported folder structure.](https://openexchange.inter
6575

6676
## Support and Collaboration
6777
ObjectScript Package Manager is a community supported project and thus open to collaboration via Pull Requests.
68-
Issues and feature requests [are very welcome](https://github.com/intersystems-community/zpm/issues)
78+
Issues and feature requests [are very welcome](https://github.com/intersystems-community/zpm/issues)

src/cls/IPM/Lifecycle/Base.cls

+4-3
Original file line numberDiff line numberDiff line change
@@ -1211,9 +1211,10 @@ Method %Export(ByRef pParams, ByRef pTargetDirectory As %String, Output pDepende
12111211
}
12121212
/// Always keep these files
12131213
Set staticFiles = $ListBuild(
1214-
// "readme.md",
1215-
// "license",
1216-
// "requirements.txt",
1214+
"readme.md",
1215+
"changelog.md",
1216+
"license",
1217+
"requirements.txt",
12171218
)
12181219
Set tRes = ##class(%File).FileSetFunc(..Module.Root)
12191220
While tRes.%Next() {

0 commit comments

Comments
 (0)