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

feat(developer): Keyman Developer v2.0 Projects #9948

Closed
64 of 69 tasks
mcdurdin opened this issue Nov 6, 2023 · 1 comment
Closed
64 of 69 tasks

feat(developer): Keyman Developer v2.0 Projects #9948

mcdurdin opened this issue Nov 6, 2023 · 1 comment
Assignees
Milestone

Comments

@mcdurdin
Copy link
Member

mcdurdin commented Nov 6, 2023

Background

This is a meta-issue collecting work items relating to support for v2.0 projects in TIKE.

PRs:

TODO

Major new features

Completed in #9949

For all operating modes:

  • Remove blank projects / untitled projects mode
  • Add Open Project Folder buttons and links
  • Remove Project Save As
  • Render uses in-memory XML
  • Upgrade to v2.0 project file (along with checks)

For v2.0 projects:

  • Remove 'Add File to Project'
  • Populate Files to list all files in folder (note: consider efficiency here as currently files are parsed for subfile data)
  • Version 2.0 project options and defaults
@mcdurdin mcdurdin added this to the A17S25 milestone Nov 6, 2023
mcdurdin added a commit that referenced this issue Nov 6, 2023
Relates to #9948. Starts basic support for v2.0 projects.

For all operating modes:

- Remove blank projects / untitled projects mode
- Add Open Project Folder buttons and links
- Remove Project Save As
- Render uses in-memory XML
- Upgrade to v2.0 project file (along with checks)

For v2.0 projects:

- Remove 'Add File to Project'
- Populate Files to list all files in folder (note: consider efficiency
  here as currently files are parsed for subfile data)
- Version 2.0 project options and defaults
mcdurdin added a commit that referenced this issue Nov 8, 2023
Relates to #9948.

Having the project upgrade messages in the Messages panel means that
users can refer to them as they clean up their projects to bring them
into the v17 format.
@mcdurdin mcdurdin modified the milestones: A17S25, A17S26 Nov 13, 2023
mcdurdin added a commit that referenced this issue Nov 13, 2023
Relates to #9948.

When upgrading a project to v2.0, it is important that all source files
are in the same folder. This change makes the upgrade process verify
that this is the case and blocks the upgrade if there are source files
in multiple folders.

Source files are .kmn, .xml (ldml keyboard), .kps, and .model.ts.
mcdurdin added a commit that referenced this issue Nov 13, 2023
Relates to #9948.

Prevents loading of projects other than v1.0, v2.0, and also handles
error cases when attempting to load projects.
mcdurdin added a commit that referenced this issue Nov 13, 2023
Relates to #9948.

For v2.0 projects, only show .kmn, .kps, .model.ts, .tsv, and .xml files
if they are source files within Options.SourcePath.
mcdurdin added a commit that referenced this issue Nov 13, 2023
Relates to #9948.

While the schema validation does check the version already, it gives a
fairly obtuse message, and we can do better.

Found a secondary issue with a iterator type guard needed in
kpj-file-reader when preparing unit test, which was probably masked in
other tests by not verifying all messages generated, so updated all
infrastructure message tests to verify the full set of messages
generated.
@darcywong00 darcywong00 modified the milestones: A17S26, A17S27 Nov 27, 2023
@mcdurdin mcdurdin self-assigned this Dec 5, 2023
mcdurdin added a commit that referenced this issue Dec 6, 2023
@mcdurdin
Copy link
Member Author

mcdurdin commented Dec 6, 2023

All todo items now have associated pull requests or future issues, closing this tracking issue.

@mcdurdin mcdurdin closed this as completed Dec 6, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants