Skip to content

Commit

Permalink
1.8.7 CHANGELOG (#24380)
Browse files Browse the repository at this point in the history
## Summary & Motivation

1.8.7 changelog

## How I Tested These Changes

## Changelog

NOCHANGELOG

- [ ] `NEW` _(added new feature or capability)_
- [ ] `BUGFIX` _(fixed a bug)_
- [ ] `DOCS` _(added or updated documentation)_
  • Loading branch information
OwenKephart authored Sep 12, 2024
1 parent 92d4cc8 commit 9eb0b5d
Show file tree
Hide file tree
Showing 2 changed files with 39 additions and 9 deletions.
28 changes: 28 additions & 0 deletions CHANGES.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,33 @@
# Changelog

## 1.8.7 (core) / 0.24.7 (libraries)

### New

- The `AssetSpec` constructor now raises an error if an invalid group name is provided, instead of an error being raised when constructing the `Definitions` object.
- `dagster/relation_identifier` metadata is now automatically attached to assets which are stored using a DbIOManager.
- [ui] Streamlined the code location list view.
- [ui] The “group by” selection on the Timeline Overview page is now part of the query parameters, meaning it will be retained when linked to directly or when navigating between pages.
- [dagster-dbt] When instantiating `DbtCliResource`, the `project_dir` argument will now override the `DBT_PROJECT_DIR` environment variable if it exists in the local environment (thanks, [@marijncv](https://github.com/marijncv)!).
- [dagster-embedded-elt] dlt assets now generate `rows_loaded` metadata (thanks, [@kristianandre](https://github.com/kristianandre)!).

### Bugfixes

- Fixed a bug where setting `asset_selection=[]` on `RunRequest` objects yielded from sensors using `asset_selection` would select all assets instead of none.
- Fixed bug where the tick status filter for batch-fetched graphql sensors was not being respected.
- [examples] Fixed missing assets in `assets_dbt_python` example.
- [dagster-airbyte] Updated the op names generated for Airbyte assets to include the full connection ID, avoiding name collisions.
- [dagster-dbt] Fixed issue causing dagster-dbt to be unable to load dbt projects where the adapter did not have a `database` field set (thanks, [@dargmuesli](https://github.com/dargmuesli)!)

### Documentation

- Fixed typo on the automation concepts page (thanks, [@oedokumaci](https://github.com/oedokumaci)!)

### Dagster Plus

- You may now wipe specific asset partitions directly from the execution context in user code by calling `DagsterInstance.wipe_asset_partitions`.
- Dagster+ users with a "Viewer" role can now create private catalog views.

## 1.8.6 (core) / 0.24.6 (libraries)

### Bugfixes
Expand Down
20 changes: 11 additions & 9 deletions scripts/generate_changelog.py
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,7 @@
GITHUB_URL = "https://github.com/dagster-io/dagster"
OSS_REPO = git.Repo(Path(__file__).parent.parent)
INTERNAL_REPO = git.Repo(os.environ["DAGSTER_INTERNAL_GIT_REPO_DIR"])
INTERNAL_DEFAULT_STR = "If a changelog entry is required"

CHANGELOG_HEADER = "## Changelog"
CHANGELOG_HEADER_PATTERN = re.compile(rf"{CHANGELOG_HEADER}.*\[\s*(.*?)\s*\]")
Expand Down Expand Up @@ -50,7 +51,7 @@ def _get_previous_version(new_version: str) -> str:
def _get_libraries_version(new_version: str) -> str:
split = new_version.split(".")
new_minor = int(split[1]) + 16
return ".".join([split[0], str(new_minor), split[2]])
return ".".join(["0", str(new_minor), split[2]])


def _get_parsed_commit(commit: git.Commit) -> ParsedCommit:
Expand All @@ -68,6 +69,10 @@ def _get_parsed_commit(commit: git.Commit) -> ParsedCommit:
raw_changelog_entry = ""
for line in str(commit.message).split("\n"):
if found and line.strip():
if INTERNAL_DEFAULT_STR in line:
# ignore changelog entry if it has not been updated
raw_changelog_entry = ""
break
raw_changelog_entry += " " + line.strip()
continue
is_header = line.startswith(CHANGELOG_HEADER)
Expand All @@ -87,18 +92,14 @@ def _get_parsed_commit(commit: git.Commit) -> ParsedCommit:
)


def _normalize(name: str) -> str:
return name.replace(" ", "").lower()


def _get_documented_section(documented: Sequence[ParsedCommit]) -> str:
grouped_commits: Mapping[str, List[ParsedCommit]] = defaultdict(list)
for commit in documented:
grouped_commits[commit.changelog_category].append(commit)

documented_text = ""
for category in CATEGORIES.values():
documented_text += f"### {category}\n"
documented_text += f"\n\n### {category}\n"
for commit in grouped_commits.get(category, []):
documented_text += f"\n* {commit.issue_link} {commit.raw_changelog_entry}"
return documented_text
Expand Down Expand Up @@ -138,12 +139,13 @@ def _generate_changelog(new_version: str, prev_version: str) -> None:
for commit in _get_commits([OSS_REPO, INTERNAL_REPO], new_version, prev_version):
if commit.documented:
documented.append(commit)
else:
elif commit.repo_name != str(INTERNAL_REPO.git_dir).split("/")[-2]:
# default to ignoring undocumented internal commits
undocumented.append(commit)

header = f"# Changelog {new_version}\n\n## {new_version} (core) / {_get_libraries_version(new_version)} (libraries)\n\n"
header = f"# Changelog {new_version}\n\n## {new_version} (core) / {_get_libraries_version(new_version)} (libraries)"
sys.stdout.write(
f"{header}\n{_get_documented_section(documented)}\n{_get_undocumented_section(undocumented)}"
f"{header}\n{_get_documented_section(documented)}\n\n{_get_undocumented_section(undocumented)}"
)


Expand Down

1 comment on commit 9eb0b5d

@github-actions
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Deploy preview for dagster-docs ready!

✅ Preview
https://dagster-docs-jql6v1oj5-elementl.vercel.app
https://master.dagster.dagster-docs.io

Built with commit 9eb0b5d.
This pull request is being automatically deployed with vercel-action

Please sign in to comment.